Method and apparatus for signal assessment including event rejection

ABSTRACT

An improved method and apparatus for non-invasively assessing one or more physiologic parameters, such as for example those associated with the circulatory system of a living organism. In one exemplary embodiment, the invention evaluates cardiac events (e.g., beats) present within an ECG waveform to determine which beats should be retained and which rejected. This evaluation is conducted based on a hierarchical method, wherein the ECG noise and morphology, as well as various aspects of the Delta Z (change in thoracic impedance), are utilized to evaluate beats for retention/rejection. In one variant, fuzzy models are used in conducting the foregoing evaluations. Parameter median filtering is also optionally applied. The foregoing techniques increase the accuracy, stability and robustness of any systems (e.g., impedance cardiographic or otherwise) which make use of the events. Improved impedance cardiographic apparatus and methods of treatment are also disclosed.

RELATED APPLICATIONS

This application is related to co-owned and co-pending U.S. patentapplication Ser. No. 10/329,129 filed Dec. 24, 2002 and entitled “Methodand Apparatus for Waveform Assessment”, incorporated herein by referencein its entirety.

COPYRIGHT

A portion of the disclosure of this patent document contains materialwhich is subject to copyright protection. The copyright owner has noobjection to the facsimile reproduction by anyone of the patent documentor the patent disclosure, as it appears in the Patent and TrademarkOffice patent files or records, but otherwise reserves all copyrightrights whatsoever.

BACKGROUND OF THE INVENTION

1. Field of the Invention

This invention relates generally to the field of signals analysis, andin one exemplary aspect to an apparatus and method for non-invasivelydetecting and evaluating signals and waveforms such as those present inthe impedance cardiograms, electrocardiograms, and other physiologicparameters of a living subject.

2. Description of Related Technology

The study of the performance and properties of the physiology (includingnotably the cardiovascular system) of a living subject has proven usefulfor diagnosing and assessing any number of conditions or diseases withinthe subject. The performance of the cardiovascular system, including theheart, has characteristically been measured in terms of severaldifferent parameters, including the stroke volume and cardiac output ofthe heart.

Noninvasive estimates of cardiac output (CO) can be obtained using thewell known technique of impedance cardiography (ICG). Strictly speaking,impedance cardiography, also known as thoracic bioimpedance or impedanceplethysmography, is used to measure the stroke volume (SV) of the heart.As shown in Eqn. (1), when the stroke volume is multiplied by heartrate, cardiac output is obtained.CO=SV=heart rate.   (1)During impedance cardiography, a constant alternating current, with afrequency such as 70 kHz, I(t), is applied across the thorax. Theresulting voltage, V(t), is used to calculate impedance. Because theimpedance is assumed to be purely resistive, the total impedance,Z_(T)(t), is calculated by Ohm's Law. The total impedance consistsgenerally of a constant base impedance, Z_(o), and time-varyingimpedance, Z_(c)(t), as shown in Eqn. (2): $\begin{matrix}{{Z_{T}(t)} = {\frac{V(t)}{I(t)} = {Z_{o} + {{Z_{c}(t)}.}}}} & (2)\end{matrix}$The time-varying impedance is believed to reflect the change in bloodresistivity as it transverses through the aorta.

Stroke volume is typically calculated from one of three well knownequations, based on this impedance change: $\begin{matrix}{{{SV} = {{\rho\left( \frac{L^{2}}{Z_{0}^{2}} \right)}{LVET}\frac{\mathbb{d}{Z(t)}}{\mathbb{d}t_{\max}}}},} & (3) \\{{{SV} = {\frac{L^{3}}{4.25\quad Z_{o}}{LVET}\frac{\mathbb{d}{Z(t)}}{\mathbb{d}t_{\max}}}},} & (4) \\{{SV} = {\delta\frac{\left( {0.17H} \right)^{3}}{4.25Z_{o}}{LVET}{\frac{\mathbb{d}{Z(t)}}{\mathbb{d}t_{\max}}.}}} & (5)\end{matrix}$

-   Kubicek:-   Sramek:-   Sramek-Bernstein:-   Where:

L=distance between the inner electrodes in cm,

LVET=ventricular ejection time in seconds,

Z_(o)=base impedance in ohms,$\frac{\mathbb{d}{Z(t)}}{\mathbb{d}t_{\max}}$=magnitude of the largest negative derivative of the impedance change,

Z_(c)(t), occurring during systole in ohms/s,

p=resistivity of blood in ohms-cm,

H=subject height in cm, and

δ=special weight correction factor.Two key parameters present in Eqns. 3, 4, and 5 above are (i)$\frac{\mathbb{d}{Z(t)}}{\mathbb{d}t_{\max}}$and (ii) LVET.These parameters are found from features referred to as fiducial points,that are present in the inverted first derivative of the impedancewaveform, $\frac{\mathbb{d}{Z(t)}}{\mathbb{d}t}.$As described by Lababidi, Z., et al, “The first derivative thoracicimpedance cardiogram,” Circulation, 41:651-658, 1970, the value of$\frac{\mathbb{d}{Z(t)}}{\mathbb{d}t_{\max}}$is generally determined from the time at which the inverted derivativevalue has the highest amplitude, also commonly referred to as the “Cpoint”. The value of $\frac{\mathbb{d}{Z(k)}}{\mathbb{d}t_{\max}}$is calculated as this amplitude value. LVET corresponds generally to thetime during which the aortic valve is open. That point in timeassociated with aortic valve opening, also commonly known as the “Bpoint”, is generally determined as the time associated with the onset ofthe rapid upstroke (a slight inflection) in$\frac{\mathbb{d}{Z(t)}}{\mathbb{d}t}$before the occurrence of the C point. The time associated with aorticvalve closing, also known as the “X point”, is generally determined asthe time associated with the inverted derivative global minimum, whichoccurs after the C point.

In addition to the foregoing “B”, “C”, and “X” points, the so-called “Opoint” may be of utility in the analysis of the cardiac muscle. The Opoint represents the time of opening of the mitral valve of the heart.The O point is generally determined as the time associated with thefirst peak after the X point. The time difference between aortic valveclosing and mitral valve opening is known as the isovolumetricrelaxation time, IVRT. However, to date, the O point has not foundsubstantial utility in the stroke volume calculation.

Impedance cardiography further requires recording of the subject'selectrocardiogram (ECG) in conjunction with the thoracic impedancewaveform previously described. Processing of the impedance waveform forhemodynamic analysis generally requires the use of ECG fiducial pointsas landmarks. Processing of the impedance waveform is generallyperformed on a beat-by-beat basis, with the ECG being used for beatdetection. In addition, detection of some fiducial points of theimpedance signal may require the use of ECG fiducial points aslandmarks. Specifically, individual beats are identified by detectingthe presence of QRS complexes within the ECG. The peak of the R wave(commonly referred to as the “R point”) in the QRS complex is alsodetected, as well as the onset of depolarization of the QRS complex (“Qpoint”).

Under the prior art approaches, the aforementioned beats are scrutinizedfor artifact (e.g., due to motion of the subject, or other such causes),through comparatively simple rules such as the evaluation of calculatedparameter values outside a typical numeric range. For example, considerthe well-known “Weissler window”, which defines the X point searchinterval based upon the heart rate and gender of a given individual;see, Weissler, A. M., Peeler, R. G., Roehll, W. H., “Relationshipsbetween left ventricular ejection time, stroke volume, and heart rate innormal individuals and patients with cardiovascular disease”, Am HeartJ, 62:367-78, 1961. The Weissler regression equation was based upon 121normal males, and 90 normal females. Although the relationship betweenheart rate and LVET is linear for normal individuals, in another workWeissler et. al. found that this relationship does not hold for abnormalpatients. In 12 non-valvular CHF patients with COs ranging from 2.1-5.8L/min, 9 patients had a significant decrease (p<0.05) in ejection timerelative to heart rate; see Weissler, A. M., Harris, W S., andSchoenfeld, C. D., “Systolic Time Intervals in Heart Failure in Man.Circulation”, 37:149-59, 1968. Hence, when applying such criteria, thetrue X points in CHF or other cardiovascular patients may be erroneouslyrejected because these X points lie outside of the Weissler window.

Other such “parametric” rejection rules may include for example (i) LVEToutside of a desired range, (ii) detection of a pacing spike with theleft/right values of ΔZ(t) (also referred to as Delta Z), (iii) d²Z/dt²_(MAX)=0, and (iv) dZ/dt_(MAX)=0 (or less than a percentage of themedian value of the most recent beats).

Parameter values from the remaining beats (i.e., those not rejected bythe aforementioned parametric criteria) are then typically averaged as amean, based on a beat average number chosen by the user.

Aside from erroneous rejection of beats as described above in thecontext of the Weissler window, other problems with prior art beatanalysis and rejection approaches exist. Specifically, significantinstabilities in various of the monitored or derived parameters such asECG, and left/right ΔZ(t) can result. Such instabilities can reduce boththe accuracy and clinical robustness of the measurement process.Erroneous pacing spike detection may also occur during a time intervalthat does not overlap with a valid B, C, or X point. Additionally, whenthe electrodes are disconnected, the “flat-line” ECG and Delta Z signalsmay provide a non-zero cardiac output (CO) estimate.

Still another distinct deficiency with the prior art analysis andrejection schemes relates to their lack of discrimination betweendifferent types of subjects. This lack of discrimination has two primaryoutgrowths: (i) causing the system to simply not function due to beingunable to measure one or more necessary parameters; and (ii) imbuing theuser or operator with somewhat of a false sense of security that alltypes of subjects (regardless of their peculiar waveforms, arrhythmiasor defects) could be successfully monitored, including generating highlysuspect or even erroneous data without otherwise alerting the user as tothe potential for degraded accuracy. Without any sort ofcontraindication (or even metric advising on the confidence level of thedata or results), the user/operator has no way of knowing, other thanperhaps via innate experience or knowledge, whether any given data isvalid or accurate.

Fuzzy Logic and Fuzzy Models

As is well known in the art, so-called “fuzzy logic” is a superset ofconventional (Boolean) logic that has been extended to handle theconcept of partial truth; i.e., truth values falling between “completelytrue” and “completely false”. Fuzzy logic was invented by Dr. LotfiZadeh of U.C. Berkeley in 1965. The fuzzy model, which utilizes fuzzylogic, is a problem-solving control system methodology that lends itselfto implementation in systems ranging from simple, small, embeddedmicro-controllers to large, networked, multi-channel PC orworkstation-based data systems. It can be implemented in hardware,software, or a combination of both. The fuzzy model provides acomparatively simple technique for arriving at a definite conclusionbased upon vague, ambiguous, imprecise, noisy, or missing inputinformation, and in some aspects mimics the human decision makingprocess.

As is well understood in the prior art, a fuzzy model incorporatesalternative, rule-based mathematics (e.g., If X AND Y THEN Z), asopposed to attempting to model a system or its response usingclosed-form mathematical equations. When the number of model inputs andmodel outputs are limited to two each, the fuzzy model is in generalempirically-based, relying on an empirical data (such as priorobservations of parameters or even an operator's experience).

Specifically, a subset U of a set S can be defined as a set of orderedpairs, each with a first element that is an element of the set S, and asecond element that is an element of the set {0, 1}, with exactly oneordered pair present for each element of S. This relationship defines amapping between elements of S and elements of the set {0, 1}. Here, thevalue “0” is used to represent non-membership, and the value “1” is usedto represent membership. The truth or falsity of the exemplarystatement:

-   -   A is in U        is determined by finding the ordered pair whose first element        is A. The foregoing statement is true if the second element of        the ordered pair is “1”, and the statement is false if it is        “0”. Similarly, a fuzzy subset F of set S can be defined as a        set of ordered pairs, each having a first element that is an        element of the set S, and a second element that is a value        falling in the interval [0, 1], with exactly one ordered pair        present for each element of S. This defines a mapping between        elements of the set S and values in the interval [0, 1]. The        value zero is used to represent complete non-membership, the        value one is used to represent complete membership, and values        in between are used to represent intermediate degrees of        membership. These fuzzy subsets serve as the fuzzy inputs and        outputs of a fuzzy model, whose input-output relationship is        defined by a rule base table.

Inherent benefits of the fuzzy model relate to its speed and simplicityof processing (e.g., MIPS, FLOPS, or similar benchmark), and its abilityto process data that is not easily represented in closed-form equations,such as may occur in physiologic data. The benefits are particularlyuseful the analysis of time-variant “noisy” signals where detection,identification, and/or evaluation of one or more features or events ofthe waveform are required, such as electrocardiography, impedancecardiography, or electroencephalography.

Based on the foregoing, what is needed are improved methods andapparatus for assessing physiologic (e.g., hemodynamic) parameters,including cardiac output, within a living subject. Such method andapparatus would ideally be completely non-invasive, accurate, easilyadapted to the varying physiology of different subjects, and wouldproduce reliable and stable results under a variety of differentoperating conditions. These methods and apparatus would be particularlyadapted to processing (and rejecting, where warranted) “noisy” waveformshaving events such as cardiac beats, and would allow for monitoring of abroader range of patient types and conditions (including variousarrhythmias).

SUMMARY OF THE INVENTION

The present invention satisfies the aforementioned needs by an improvedmethod and apparatus for, inter alia, non-invasively assessingphysiologic parameters (including cardiac output) within a livingsubject.

In a first aspect of the invention, an improved method of assessingcardiac output within a living subject is disclosed. In one embodiment,the method comprises: disposing a plurality of electrodes relative tothe thoracic cavity of the subject; passing an electrical currentthrough at least a portion of the thoracic cavity; measuring at leastone impedance waveform associated with the thoracic cavity using thecurrent and at least one of the plurality of electrodes; measuring atleast electrocardiographic waveform having a plurality of eventsassociated therewith; selectively rejecting at least one of the events;and determining cardiac output based at least in part on the impedancewaveform and at least a portion of the non-rejected ones of the events.The events comprise, e.g., cardiac beats within the electrocardiographicwaveform, and the act of selectively rejecting comprises performinganalysis based on various aspects of the ECG signal (e.g., noise and/ormorphology) as well as the impedance waveform (e.g., similarity and/orreproducibility).

In a second aspect of the invention, an improved method of assessing ahemodynamic parameter within a living subject is disclosed. In oneembodiment, the method comprises: disposing at least one electroderelative to the subject; measuring at least one cardiographic waveformfrom the subject using the at least one electrode, the waveform having aplurality of beats; processing the plurality of beats to identify firstbeats that should be rejected, and second beats that should not berejected; and assessing the hemodynamic parameter based at least in parton the second beats.

In a third aspect of the invention, an improved apparatus adapted toevaluate the cardiac beats of a living subject is disclosed. In oneembodiment, the apparatus uses at least one fuzzy-based noise algorithmand at least one fuzzy-based morphology algorithm to screen beats forpossible rejection. A rule base inference (RBI) process based on a Zadehintersection approach is used in combination with a centroid-baseddefuzzification process.

In a fourth aspect of the invention, an improved impedance cardiographicapparatus adapted to evaluate physiologic waveforms obtained from aliving subject is disclosed. In one embodiment, the apparatus uses acomputer program adapted to evaluate criteria comprising (i) at leastone ECG rejection criterion and (ii) at least one Delta Z rejectioncriterion.

In a fifth aspect of the invention, improved cardiographic apparatusadapted to evaluate the cardiac beats of a living subject is disclosed.In one embodiment, the apparatus performs an ECG rejection analysis; aDelta Z rejection analysis; and a median filtering analysis. The ECG,Delta Z and median filtering processes are performed in a substantiallysequential hierarchy.

In a sixth aspect of the invention, an improved method of evaluating thecardiac beats of a living subject is disclosed. In one embodiment, themethod comprises: performing an ECG rejection analysis; performing aDelta Z rejection analysis; and performing a median filtering analysis.

In a seventh aspect of the invention, an improved method of evaluatingthe cardiac beats of a living subject is disclosed. In one embodiment,the method comprises: performing a beat rejection analysis on aplurality of the cardiac beats; rejecting at least one of the beats aspart of the analysis; and determining, based at least in part on the atleast one rejected beat, a status of the rejection analysis. The statusof the analysis may comprise the suitability of the (ECG) inputs to theanalysis, or the suitability of the analysis itself at accuratelyrejecting (or retaining) beats.

In another embodiment, the method comprises: providing a plurality ofsources of the cardiac beats; performing a beat rejection analysis on aplurality of the cardiac beats derived from a first of the plurality ofsources; rejecting at least one of the beats as part of the analysis;and determining, based at least in part on the at least one rejectedbeat, the suitability of the first source for providing the cardiacbeats. If the first source is determined to be (or possibly) unsuitable,a secondary process such as an automatic ECG vector selection routine,is employed to select one or more optimal sources.

In an eighth aspect of the invention, improved cardiographic apparatusis disclosed. In one embodiment, the apparatus comprises an ECGevaluation module and a plurality of input vectors associated therewith,the module evaluating the cardiac beats of a living subject representedby one or more of the vectors. The module evaluates the beats by:providing a plurality of sources of the cardiac beats; performing a beatrejection analysis on a plurality of the cardiac beats derived from afirst of the plurality of sources; rejecting at least one of the beatsas part of the analysis; and determining, based at least in part on theat least one rejected beat, the suitability of the first source forproviding the cardiac beats.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a graphical representation of one exemplary embodiment of theanalytical hierarchy used for processing waveform events according tothe present invention.

FIG. 1 a is a logical block diagram illustrating one exemplaryembodiment of the waveform analysis methodology of the presentinvention.

FIG. 2 is a graphical representation of one exemplary embodiment of theECG module event rejection processing according to the invention,including ECG noise and morphology analyses.

FIG. 3 is a graphical illustration of three ECG arrhythmias.

FIG. 4 is a logical block diagram illustrating one exemplary embodimentof the ECG noise (fuzzy) rejection processing according to theinvention.

FIG. 5 is a logical block diagram illustrating one exemplary embodimentof the process of creating the mean squared error (MSE) profile withinthe ECG noise processing of FIG. 4.

FIG. 6 is a graphical representation of exemplary input membershipfunctions for MSE and the R-to-R interval change, and output membershipfunctions for the fuzzy noise rejection processing of FIG. 4.

FIG. 7 is a logical block diagram illustrating one exemplary embodimentof the ECG morphology (fuzzy) rejection processing according to theinvention.

FIG. 8 is a graphical representation of exemplary input and outputmembership functions for the fuzzy morphology processing of FIG. 7.

FIG. 9 is a graphical representation of an exemplary mean squared error(MSE) profile, including points used to determine the morphologysimilarity.

FIG. 10 is a logical flow diagram of an exemplary ECG reset moduledecision process.

FIG. 11 is a logical block diagram illustrating one exemplary embodimentof the Delta Z (fuzzy) similarity rejection processing according to theinvention.

FIG. 12 is a graphical representation of exemplary input and outputmembership functions for the fuzzy Delta Z similarity processing of FIG.11.

FIG. 13 is a logical flow diagram illustrating one exemplary embodimentof the method of evaluating signals (e.g., Delta Z) for reproducibilityaccording to the invention.

FIG. 13 a is a block diagram illustrating one exemplary embodiment ofthe signal processing architecture used to perform the method of FIG.13.

FIG. 14 is a block diagram of one exemplary embodiment of the apparatusfor hemodynamic assessment according to the invention.

FIG. 15 is a logical flow diagram illustrating one exemplary embodimentof the method of providing treatment to a subject using theaforementioned methods.

DETAILED DESCRIPTION OF THE INVENTION

Reference is now made to the drawings wherein like numerals refer tolike parts throughout.

It is noted that while the invention is described herein in terms of anapparatus and method for analyzing waveforms and signals derived fromthe thorax of a human subject, the invention may also be embodied oradapted to monitor other locations on the human body, as well asmonitoring parameters of other warm-blooded species such as, forexample, primates, canines, or porcines. All such adaptations andalternate embodiments are considered to fall within the scope of theclaims appended hereto.

As used herein, the term “signal” refers to any electrical, optical,electromagnetic, subatomic, thermal, chemical/electro-chemical, or othertransferal of information. Such signal may be, without limitation, inthe analog or digital domain, or otherwise. Specific examples of signalsinclude waveforms, pulses, binary digital data, analog voltage levels,modulated radio or infrared waves, including temporal and/or spatialvariations of any of the foregoing.

As used herein, the term “morphology” refers generally to the propertyof shape and/or appearance of an event or artifact, including withoutlimitation that associated with cardiac waveforms. The term “morphology”may refer to non-physiologic waveforms as well.

As used herein, the term “module” refers generally to a logical sequenceor association of steps, processes or components. For example, asoftware module might comprise a set of associated routines orsubroutines within a computer program. Alternatively, a module mightcomprise a substantially self-contained hardware device. A module mightalso comprise a logical set of processes irrespective of any software orhardware implementation.

As used herein, the term “network” refers generally to any type oftelecommunications or data network including, without limitation, hybridfiber coax (HFC) networks, satellite networks, telco networks, and datanetworks (including MANs, WANs, LANs, WLANs, internets, and intranets).Such networks or portions thereof may utilize any one or more differenttopologies (e.g., ring, bus, star, loop, etc.), transmission media(e.g., wired/RF cable, RF wireless, infrared, millimeter wave, optical,etc.) and/or communications or networking protocols (e.g., SONET,DOCSIS, IEEE Std. 802.3, 802.11, 802.15, Bluetooth, ATM, X.25, FrameRelay, 3GPP, 3GPP2, WAP, SIP, UDP, FTP, RTP/RTCP, H.323, etc.).

As used herein, the terms “client device” and “end user device” include,but are not limited to, personal computers (PCs) and minicomputers,whether desktop, laptop, or otherwise, personal digital assistants(PDAs) such as the Apple Newton®, “Palm®” family of devices, handheldcomputers, personal communicators such as the Motorola Accompli or V710,J2ME equipped devices, cellular telephones, wireless nodes, or literallyany other device capable of interchanging data with a network.

As used herein, the term “application” refers generally to a unit ofexecutable software that implements a certain functionality or theme.The themes of applications vary broadly across any number of disciplinesand functions, and one application may have more than one theme. Theunit of executable software generally runs in a predeterminedenvironment; for example, the unit could comprise a module that runswithin the Java™ environment.

As used herein, the term “computer program” is meant to include anysequence or human or machine cognizable steps which perform a function.Such program may be rendered in virtually any programming language orenvironment including, for example, C/C++, Fortran, COBOL, PASCAL,assembly language, markup languages (e.g., HTML, SGML, XML, VoXML), andthe like, as well as object-oriented environments such as the CommonObject Request Broker Architecture (CORBA), Java™ (including J2ME, JavaBeans, etc.) and the like.

As used herein, the term “server” refers to any computerized component,system or entity regardless of form which is adapted to provide data,files, applications, content, or other services to one or more otherdevices or entities on a computer network.

Overview

In one fundamental aspect, the present invention comprises a method ofassessing physiologic (e.g., hemodynamic) parameters within a livingsubject through analysis of continuous or non-continuous waveforms,including artifacts within these waveforms. This assessment includesenhanced or “intelligent” rejection of certain portions of thewaveform(s). By accurately rejecting or not rejecting these portions ofthe analyzed signals, greater accuracy and clinical robustness areprovided. Furthermore, a greater level of confidence in the physiologicdata obtained (or data derived therefrom) is also provided through useof this approach.

In one exemplary embodiment, the foregoing methods and apparatus areadapted to the measurement of impedance cardiograms (ICG) and/orelectrocardiograms (ECG) for living subjects. Specifically, more robustrejection of waveform events of interest (such as cardiac beats) isprovided through use of a hierarchy or class system, as well as theapplication of advanced fuzzy logic models, cross-correlationtechniques, and beat averaging.

In a first exemplary rejection class, a cardiac beat is excluded if itdoes not meet the ECG criteria for minimum ECG amplitude, heart raterange, noise, and/or morphology (i.e., shape and/or appearance). The ECGnoise and morphology rejection criteria are based on fuzzy models,although other approaches may be employed.

In a second exemplary rejection class, a beat is excluded if it does notmeet the prescribed criteria for minimum Delta Z amplitude, similarity,and/or reproducibility. The Delta Z noise rejection criteria are alsooptionally based on fuzzy models.

In a third exemplary rejection class, all calculated parameters areoptionally median filtered so that extremely high or low parametervalues are never displayed or utilized.

FIG. 1 (discussed in greater detail below) graphically illustrates oneembodiment of this exemplary assessment and rejection hierarchy at ahigh level.

The foregoing artifact analysis and rejection hierarchy advantageouslyprovides a number of other benefits, including enabling the accuratemonitoring of the majority of patients with arrhythmias/conductiondefects, and highly stable ECG and Delta Z parameter updates. Morestable parameter displays are also provided, which give the user oroperator a tangible perception of the improved accuracy referencedabove.

Furthermore, while the methods and apparatus of the present inventionfind great utility in the field of hemodynamic measurement andassessment, these methods and apparatus (when properly adapted) may bemore broadly applied to other non-hemodynamic parameters, and evennon-physiologic systems wherein the evaluation of a periodic series ofwaveform events requires analysis such as, without limitation, pulsedradio frequency (RF) systems and pulsed Doppler-based acousticunderwater systems such as active sonar and ADCPs.

Description of Exemplary Embodiments

Referring now to FIGS. 1 and 1 a, a first exemplary embodiment of theartifact analysis methodology of the present invention is described Itwill be appreciated that while described primarily in the context ofcardiac events (i.e., beats), the methods and apparatus of the inventionmay be applied to events occurring in other (non-cardiac) waveforms

As shown in FIG. 1, the exemplary analysis model includes an analyticalhierarchy 100 comprising three classes 102, 104, 106 of rejection.

In the first rejection class 102, an artifact (e.g., beat) is excludedif it does not meet the ECG criteria which may include ECG amplitude,heart rate, noise, and/or morphology.

In the second rejection class, a beat is excluded if it does not meetthe criteria for Delta Z amplitude, similarity and/or reproducibility.

In the third rejection class, all calculated parameters are medianfiltered so that extremely high or low parameter values are neverdisplayed. These criteria are discussed in detail in the followingsections.

An assumption for the rejection hierarchy of FIG. 1 is that so-called“R” points are detected accurately. It will be appreciated, however,that the methodology of the present invention has some degree ofrobustness in this regard, such that useful results can be derived evenwhen the R point detection is less than optimal.

ECG Rejection Criteria—

Referring now to FIG. 2, a first exemplary embodiment of the ECGrejection criteria methodology (step 102 of FIG. 1) is described. Inthis embodiment, the ECG rejection criteria are advantageously based onAssociation for the Advancement of Medical Instrumentation (AAMI) and/orother relevant standards and specifications in order to provide maximumapplicability and uniformity, although it will be recognized this is nota requirement of the invention.

As will be recognized by those of ordinary skill, the ECG is generallyless sensitive than Delta Z to noise artifact, and hence is used in theexemplary embodiment to parse Delta Z beats. However, when high levelsof noise are present, detection of pacemaker spikes and R points may beunreliable, and hence may be avoided.

Furthermore, as described subsequently herein, “flat-line” signals(i.e., signals with no time/amplitude variance), and signals relating tovery low or high patient heart rates, are rejected.

According to one salient aspect of the invention, “noisy” and/ordissimilar beats are rejected using at least one of the ECG noise andmorphology rejection methodologies which, in an exemplary apparatusconfiguration, comprise computer program routines running on a digitalprocessor (see discussion of FIG. 14 below). The interaction of thesetwo algorithms is illustrated in FIG. 2.

As shown in FIG. 2, the new QRS complex is first analyzed to determinewhether pacing is applicable (step 202). If so, a QRS subset is selectedfrom the pacing spike location (step 204). If not, the R point isdetected (step 206), the Q point detected (step 208), and the QRS subsetselected from the R point location (step 210).

The new QRS (whether from the pacing or non-pacing branches describedabove) are then analyzed relative to the previous QRS complex based onthe ECG noise rejection criteria (described subsequently herein) perstep 212. If the beat is rejected, the next beat is analyzed (step 214).If no rejection occurs, the ECG morphology analysis is next performed(step 216). If the beat survives the morphology testing, it is thenpassed to Delta Z processing per step 220. Otherwise, the next beat isanalyzed per step 214.

In one embodiment of the method 200 of FIG. 2, R point detection occurswhen a paced QRS occurs (i.e., after the pacing spike detection, butbefore noise rejection). This means that the QRS subsets for both pacedand unpaced beats are centered around the same feature, the R point.However, it will be recognized that other approaches may be utilized.

The illustrated embodiment of the ECG noise and morphology rejectionalgorithms (FIG. 2) assumes that a ‘good’ or normal beat is stored as aprior QRS complex. Occasionally, when ECG processing begins (or underextreme noise), the prior QRS complex can become an abnormal beat. Thiscondition may cause all subsequent ‘good’ beats to be rejected. Hence,one embodiment of the invention includes a mechanism by which the system(or user) can reset the QRS complex. In one variant, the user can resetthe ECG rejection model by pressing the system ‘Reset’ button, or F3 onthe keypad (see discussion of apparatus 1400 of FIG. 14 below). Thiswill reset the current QRS after the morphology rejection routine.Alternatively, the system 1400 may be programmed to automaticallyevaluate and instigate this reset function, with or without warning orindication to the operator (as desired). Various other types ofindication and control functions relating to QRS reset may be envisagedby those of ordinary skill provided the present disclosure.

ECG Amplitude—In one embodiment of the invention, an arrhythmiadetection algorithm is employed which evaluates the ECG amplitude. Forexample, at least 100 μV peak-to-peak median amplitude over 4.5 secondsis used in the illustrated embodiments as the basis for ventricularfibrillation detection, although other criteria may be used. Thisminimum amplitude requirement ensures that electrode disconnection orother hardware failure, which would be monitored as a flat-line ECGtrace, is not interpreted as a valid signal. This minimum amplitudetranslates to a “raw” number (i.e., 26,000) of A/D counts in theexemplary apparatus 1400 of FIG. 14. The raw signal is filtered usinghigh- and low-pass filters that combine to give −26 dB (95% attenuation)in the passband. Based on this filtered output, a minimum amplitude(e.g., 1300 A/D counts) is required for further ECG processing to occur.

Heart Rate—The acceptable heart rate value or range is optionallyapplied to further evaluate the signals of interest. For example, aminimum or maximum heart rate may be specified, or alternatively anallowable range specified. This criterion (as with others describedherein) may be programmatically or systematically varied if desired,such as where the allowable range varies based on user input, oralternatively detected parameters regarding the subject being monitored.In the exemplary embodiment, a nominal range of 40 to 250 bpm isutilized, although other values may be used with equal success.

Arrhythmias—When implemented in an impedance cardiograph monitor ormodule, the algorithms of the present invention can successfully processdata from many patients with cardiac arrhythmias. This provides asignificant improvement over the prior art, wherein the monitoring ofpatients with such arrhythmias was often inaccurate or even impossible.

It is noted that neither AAMI ECAR-1987 nor ANSI/AAMI EC38-1994, whichapply to ambulatory cardiographs, provide specific requirements forarrhythmia detection performance. Additionally, AAMI ECAR-1987 considersa detected beat matched with an annotated beat (from the MIT/BIH or AHAdatabases) if the time between detected and annotated beat is within±150 msec (±30 samples at a filtered and decimated sample rate of 200Hz). Exemplary configurations of the algorithms disclosed herein weredetermined by the Assignee hereof to possess beat detection (pacer spikedetection or R point detection) sensitivity≧90% and specificity≧90%, aswell as a match detection window much less that the AAMI ECAR-1987 value(i.e., on the order of ±15 samples), thereby providing enhanced abilityto monitor arrhythmic patients.

Per AAMI ECAR-1987, flutter and ventricular fibrillation are excludedfrom summary statistics. Wolff-Parkinson-White syndrome, which resultsin several QRS morphologies in the same patient, is also excluded fromsummary statistics. The incidence of Wolff-Parkinson-White (WPW)syndrome is on the order of 0.1 to 0.3% of the general population.Waveforms possessing approximately equal percentages of twomorphologies, such as bigeminy, are also excluded from summarystatistics. Examples of these arrhythmias are shown in FIG. 3. FIG. 3(a)is an example of bigeminy, where every other beat is a prematureventricular contraction (PVC). FIG. 3(b) shows a patient traversing fromWPW into normal sinus rhythm. FIG. 3 c is an example of ventricularflutter.

Hence, in the exemplary embodiment of the invention, arrhythmias such asthe three shown in FIG. 3 can either be (i) processed by the algorithmsdescribed herein (i.e., these algorithms are robust enough to allow suchprocessing without significant degradation), or (ii) optionally excludedfrom monitoring, such as by visual inspection of the monitor display.

ECG Noise Rejection—In the illustrated embodiment, once a QRS complex isdetected, it is first tested for excessive noise using an ECG noiserejection fuzzy model (see step 212 of FIG. 2). This model uses thechange in the R-to-R interval from the previous beat, and the change inmean squared error (MSE) from the last n (e.g., n=2) good beats, todetermine whether the beat under analysis should be further processed.FIG. 4 illustrates this process 400 graphically.

As shown in FIG. 4, the new and old QRS complexes are first input to anormalization process (step 402). After normalization, a number ofdifferent signal calculations are performed (step 404). Inputs to thiscalculation process include (i) the current R-R interval; (ii) theoutput of the normalization process 402; the previous R-R interval; and(iv) the previous MSE value. The signal calculation process generatesdifferential (delta) MSE and R-R values, which are then input to afuzzification process (step 406). The outputs of the fuzzificationprocess 406 are input to rule base inference process (step 408),followed by a defuzzification process (step 410). The output of thedefuzzification process (a signal relating to whether the beat should berejected or not) is then input to a reset module (step 412) that eitherrejects or includes the new beat.

The normalization of the new and old QRS complexes (step 402) normalizesthese complexes to values between 0 and 1, although other normalizationschemes or scales may be used. Input parameters to this exemplaryprocess 402 comprise:

1) NewQRS(k)—A predetermined number (e.g., 80) samples around the Rpoint location comprising the current QRS complex; and

2) OldQRS(k)—A predetermined number (e.g., 80) samples around the last Rpoint comprising the last accepted QRS complex.

Output parameters of this process 402 comprise:

1) norm_NewQRS(k)—The QRS complex normalized by the peak to peakamplitude of the original QRS complex; and

2) norm_OldQRS(k)—The QRS complex normalized by the peak to peakamplitude of the original QRS complex.

Input parameters to the illustrated signals calculation process (step404) of FIG. 4 comprise:

1) norm_NewQRS(k)—The QRS complex normalized by the peak to peakamplitude of the original QRS complex.

2) norm_OldQRS(k)—The QRS complex normalized by the peak to peakamplitude of the original QRS complex.

3) R2RInt_new—The number of samples from the previous R point to thecurrent R Point

4) R2RInt_last—The number of samples from the R point from second tolast QRS complex to the R point of the previous QRS complex

5) MSE(m−1)—The mean squared error from the previous good beat where m∈[0, . . . , M], M+1=number of QRS complexes.

Internal Processing of the signal calculation process 404 comprisesdetermining the mean squared error array of the previous and currentnormalized QRS complexes (MSE_Profile(k)). The mean squared error array(MSE_Profile(k)) is a vector of mean values representing the differencebetween the two filtered QRS complexes, as the old QRS complex isshifted relative to the new complex (see FIG. 5). As shown in FIG. 5,the new QRS complex is padded with i/2 zeros on each end (step 502), andthen shifted or pushed a given amount (i) relative to the old QRScomplex (step 504). The new and old QRS complexes are then subtractedand squared (step 506) to obtain a mean value. If the index i is lessthan a designated value (Shiftlen), then it is incremented and steps 502through 506 repeated until Shiftlen is reached, at which the MSE_Profileis generated.

The MSE array is constructed using the following exemplary pseudocodealgorithm: shift_length = 20; newqrs_x = mean (norm_NewQRS); oldqrs_x =mean (norm_OldQRS); i=0; if(i<80){  new_qrs_nomean(i) = norm_NewQRS(i) −newqrs_x;  old_qrs_nomean(i) = norm_OldQRS(i) − oldqrs_x;  i++;}zeros_array=CREATEARRAY(0, 10) /*create an array of zeros with length of10*/ long_new_qrs= CONCATENATEARRAYS(zeros_array, new_qrs_nomean,zeros_array); j=0; FOR(j<20){  subs_long_qrs = long_old_qrs(j:80) /*takea 80 sample subset from j forward*/  difference = subs_long_qrs −old_qrs_nomean;  square = difference * difference;  MSE_profile_raw(j) =MEAN(square);  j++;} MSE_Profile = 1000*(MSE_profile_raw) /*Normalizethe MSE array by the max value and multiply by 100 */

-   -   © Copyright 2004 CardioDynamics International Corporation. All        rights reserved.        The mean squared error array of the current QRS complex        comprises the minimum value from the MSE_Profile array, and is        calculated using the relationship of Eqn (6) below:        $\begin{matrix}        {{MSE} = \left\{ \begin{matrix}        {1} & {{\min\left\lbrack {{MSE\_ Profile}(k)} \right\rbrack} \leq 1} \\        {\min\left\lbrack {{MSE\_ Profile}(k)} \right\rbrack} & {otherwise}        \end{matrix} \right.} & (6)        \end{matrix}$        The output parameters of the signal calculation process 404        comprise:

1) ΔMSE—The mean squared error value for the two given QRS complexes.This value is expressed as a fractional change, and may be calculatedaccording to Eqn. (7) below: $\begin{matrix}{{{\Delta\quad{MSE}} = {{abs}\left\{ \frac{\left\lbrack {{{MSE}(m)} - {{MSE}\left( {m - 1} \right)}} \right\rbrack}{{MSE}\left( {m - 1} \right)} \right\}}},} & (7)\end{matrix}$

-   -   where m ∈[0, . . . , M], M+1=number of QRS complexes

2) ΔRR—The R point-to-R point interval change between the current andprevious QRS complexes. This value is, in the current embodiment,expressed as a fractional change, and is calculated according to Eqn.(8) below: $\begin{matrix}{{{{{\Delta\quad{RR}} = {{abs}\left\{ \frac{\left( {{{RR}\quad(m)} - {{RR}\quad\left( {m - 1} \right)}} \right)}{{RR}\quad\left( {m - 1} \right)} \right\}}},{where}}\quad{{m \in \left\lbrack {0,\ldots\quad,M} \right\rbrack},{{M + 1} = {{number}\quad{of}\quad{QRS}\quad{{complexes}.}}}}}\quad} & (8)\end{matrix}$

Fuzzification—The “crisp” inputs are, in the illustrated embodiment ofFIG. 4, translated through membership functions into a plurality offuzzy inputs. This process 406 is graphically illustrated in FIG. 6.Input parameters to the fuzzification process (i.e., to produce thefuzzy inputs for the rule base inference process 408) comprise:

1) ΔMSE—The mean squared error value for the two given QRS complexes;and

2) ΔRR—The R point to R point interval change between the current andprevious QRS complexes.

Internal processing conducted by the fuzzification process 406 of FIG. 6comprises:

1) M_mse—Low resolution mean squared error change. M_mse is calculatedaccording to Eqn. (9):M _(—) mse(m)=ROUND(ΔMSE(m)),   (9)

-   -   where M_mse is bounded within the range {0,10}.

2) M_rr—Low resolution R to R interval. M_rr may be calculated accordingto Eqn. (10):M _(—) rr(m)=INT(ΔRR(m)/0.05)+ROUND[MOD(ΔRR(m)/0.05)/0.05]  (10)

-   -   where M_rr is bounded within the range {0,9}.        Output parameters of the aforementioned exemplary fuzzification        process 406 comprise:

1) LabelRR(i)—One or two labels associated with M_rr, based on Table 1(Appendix A).

2) DegreeRR(i)—Degree associated with each M_rr label, based on Table 2(Appendix A).

3) LabelMSE(i)—One or two labels associated with M_mse, based on Table 3(Appendix A).

4) DegreeMSE(i)—Degree associated with each M_mse label, based on Table4 (Appendix A).

Rule Based Inference—The fuzzy inputs to the rule base inference process408 (i.e., the outputs of the fuzzification process 406) are processedusing a Zadeh intersection approach (or other comparable process) inorder to obtain the fuzzy outputs. The input parameters compriseelements 1)-4) shown above, and the output parameters comprise:

1) LabelNR(i)—One to four labels associated with RejectionLevel. Eachcombination of LabelRR(i) and LabelMSE(i) is input to a structure suchas that of Table 5 (Appendix I) to determine LabelNR(i).

2) DegreeNR(i)—Degree associated with each RejectionLevel label. Foreach combination of LabelRR(i) and LabelMSE(i), the minimum associatedDegreeRR(i) or DegreeMSE(i) is output as DegreeNR(i).

Defuzzification—As part of the defuzzification process 410 of theillustrated embodiment of FIG. 4, the fuzzy outputs are processed backto a crisp output using the well known centroid method, although otherdefuzzification methods may be used consistent with the invention. Inputparameters to the defuzzification process include LabelNR(i) andDegreeNR(i) described above, as well as MF(i,j) (membership functionsfor NoiseRejectionLevel). The row index (i) of MF(i,j) represents e.g.,the label 0-4. The column index (j) represents the membership functionsample. Table 6 (Appendix I) shows an exemplary membership functionarray configuration. Internal processing of the defuzzification process410 comprises:

1) F(j)—Fuzzification union. The union of the individual membershipfunctions, with associated degrees, is taken according to Eqn. (11):F(j)=clip{DegreeN(0), MF[LabelN(0),:]}∪clip{DegreeN(1),MF[LabelN(1),:]}∪clip{DegreeN(2),MF[LabelN(2),:]}∪clip{DegreeN(3),MF[LabelN(3),:]}  (11)where the notation “:” refers to using all indices e.g., j=0 to 4, andclip[x,y(j)] refers to clipping all values of the function y(j) at themaximum value of x.

2) RejectionLevel—The noise class is found from calculating the centroidof the fuzzification union as in Eqn. (12): $\begin{matrix}{{RejectionLevel} = \frac{\sum\limits_{j = 0}^{4}\quad{F\quad{(j) \cdot (j)}}}{\sum\limits_{j = 0}^{4}\quad{F\quad(j)}}} & (12)\end{matrix}$Output parameters of the exemplary defuzzification process 410 of FIG. 4comprise:

1) RejectBeatN—Boolean value representing whether the beat is noisy ornot. The value is set to true if RejectionLevel is greater than or equalto a predetermined value (e.g. 2).

ECG Morphology—The morphology, or shape, of the ECG is also used in theexemplary process of FIG. 2 to reject dissimilar beats (see step 216).Each incoming QRS complex is compared to a previous QRS complex (e.g.,the QRS immediately preceding the current complex being evaluated), anda fuzzy model determines whether to include or reject a beat. FIG. 7graphically illustrates this process 700.

As shown in FIG. 7, a process generally comparable to that of FIG. 4 isperformed for morphology testing, with the exception that a Scale 1approximation process (step 702) is first performed on the new and oldQRS complexes. The outputs of this process 702 are then input to asignal calculation process (step 704), which is followed byfuzzification (step 706), rule base inference (step 708), anddefuzzification (step 710).

The Scale 1 wavelet filter process, to obtain wavelet transformapproximation coefficients 702 of FIG. 7, may take any number ofdifferent forms. In one exemplary variant, the filter is calculatedbased on a reverse biorthogonal 2.2 wavelet of the type well known inthe signal processing arts. Other wavelet (and even non-wavelet)filtering approaches may also be used consistent with the invention.This same wavelet filter may advantageously also be used if desired forother functions, such as e.g., X point detection. Input parameters forthe exemplary Scale 1 filtering process 702 of FIG. 7 comprise:

1) NewQRS(k)—N (e.g., 80) samples around the R point location comprisingthe current QRS complex;

2) OldQRS(k)—N (e.g., 80) samples around the last R point comprising thelast accepted QRS complex; and

3) bH0 to bH32—Exemplary reverse biorthogonal 2.2 wavelet filtercoefficients are listed in Table 7 of Appendix I.

Output parameters of the exemplary Scale 1 filter process 702 comprise:

1) S1_NewQRS(k)—samples comprising the wavelet filtered Scale 1approximation of the current QRS complex using the standard convolution;and

2) S1_OldQRS(k)—samples comprising the wavelet filtered Scale 1approximation of the last accepted QRS complex using the standardconvolution.

Signal Calculations—Input parameters for the signal calculation function704 of FIG. 7 include:

1) S1_NewQRS(k)—samples comprising the scale 1 approximation of thecurrent QRS complex; and

2) S1_OldQRS(k)—samples comprising the scale 1 approximation of the lastaccepted QRS complex.

Internal processing for the signal calculation function 704 includesdetermination of MSE_Profile(k), or the mean squared error array of theprevious and current QRS complex. The mean squared error profile of theillustrated embodiment is a vector of mean values representing thedifference between the two filtered QRS complexes, as the old QRScomplex is iteratively shifted relative to the new complex. This processwas previously described with respect to FIG. 5, and is completelyanalogous in the context of the present morphology analysis.

For morphology rejection, the exemplary value of the shift length is 120samples, and traverses the full length of both signals. It will berecognized, however, that other lengths may be used, and in fact othertypes of processes.

The following exemplary pseudocode illustrates one possible constructionalgorithm for the MSE array:  shift_length = 120;  newqrs_x = mean(S1_NewQRS);  oldqrs_x = mean (S1_OldQRS);  i=0;  if(i<40){  new_qrs_nomean(i) = S1_NewQRS(i) − newqrs_x;   old_qrs_nomean(i) =S1_OldQRS(i) − oldqrs_x;   i++;}  zeros_array=CREATEARRAY(0, 40)/*create an array of zeros with  length of 40*/ long_old_qrs= CONCATENATEARRAYS(zeros_array,  old_qrs_nomean, zeros_array);  j=0; long_mean_array = CREATEARRAY(0,shiftlength);  FOR(j<80){  subs_long_qrs = long_old_qrs(j:40)  /*take a 40 sample subset from jforward*/   difference = subs_long_qrs − new_qrs_nomean;   square =difference * difference;   long_mean_array(j) = MEAN(square);   j++;} MSE_profile_raw = long_mean_array(10:70); MSE_Profile =100*(MSE_profile_raw/MAX(MSE_Profile_raw)) /*Normalize the MSE array bythe max value and multiply by 100 */

-   -   © Copyright 2004 CardioDynamics International Corporation. All        rights reserved.        The following values are also defined in the signals calculation        process 704:

1) Cp_y—The y axis value of the minimum point of MSE_profile.

2) Cp_x—The x axis value of the minimum point of MSE_profile.

3) Leftmax—Beginning at Cp_x and decrementing by one sample inMSE_profile, find the first sample that satisfies Eqn. (13):MSE_Profile(k−1)<MSE_Profile(k)   (13)

4) Rightmax—Beginning at Cp_x and incrementing by one sample inMSE_profile, find the first sample that satisfies Eqn. (14):MSE_Profile(k+1)<MSE_Profile(k)   (14)

5) Rmax_x—The x axis value of the Rightmax location (see FIG. 9).

6) Rmax_y—The y axis value of the Rightmax location.

7) Lmax_x—The x axis value of the Leftmax location.

8) Lmax_y—The y axis value of the Leftmax location.

Exemplary output parameters for the signal calculation function 704 ofFIG. 7 comprise:

1) SymFactor—The symmetry factor for the MSE_Profile array arecalculated according to Eqn. (15):SymFactor=Cp _(—) y+abs((Rmax_(—) x−Cp _(—) x)−(Lmax_(—) x−Cp _(—)x))+abs(Rmax_(—) y−Lmax_(—) y)   (15)

2) CenterPoint—The x axis location of the minimum of the MSE_Profilearray, Cp_x.

Fuzzification—As shown in the exemplary process 700 of FIG. 7, the crispinputs are translated through membership functions into fuzzy inputs viaa fuzzification process 706. Input parameters to this process 706comprise SymFactor and CenterPoint defined above. FIG. 8 illustratesexemplary input membership functions for CenterPoint and SymFactor, andoutput membership functions for RejectionLevel.

Internal processing performed by the exemplary fuzzification process 706of FIG. 7 includes:

1) Mcenterpt—Low resolution center point. Mcenterpt is calculatedaccording to Eqn. (16):Mcenterpt=INT(CenterPoint/3)+ROUND[MOD(CenterPoint/3)/3]  (16)where Mcenterpt is bounded within a predetermined range; e.g., {0,16}.

2) Msymfact—Low resolution symmetry factor. Msymfact is calculatedaccording to Eqn. (17):Msymfact=INT(SymFactor/10)+ROUND[MOD(SymFactor/10)/10]  (17)where Msymfact is bounded within the range {0,10}.Exemplary output parameters of the fuzzification process 706 of FIG. 7include:

1) LabelCp(i)—One or two labels associated with Mcenterpt, based onTable 8 of Appendix I.

2) DegreeCp(i)—Degree associated with each Mcenterpt label, based onTable 9 of Appendix I.

3) LabelSf(i)—One or two labels associated with Msymfactor, based onTable 10 of Appendix I.

4) DegreeSf(i)—Degree associated with each Msymfactor label, based onTable 11 of Appendix I.

Rule Base Inference—In the exemplary methodology of FIG. 7, the fuzzyinputs are processed using a rule based inference process 708 (the Zadehintersection in the illustrated embodiment) to obtain fuzzy outputs.Exemplary input parameters to this process 708 comprise the outputparameters 1)-4) of the fuzzification process 706 listed above. Outputparameters of the rule based inference process 708 comprise:

1) LabelR(i)—One to four labels associated with RejectionLevel; and

2) DegreeR(i)—Degree associated with each RejectionLevel label.

Each combination of LabelCp(i) and LabelSf(i) are input to Table 12(Appendix I) to determine LabelN(i). For each combination of LabelCp(i)and LabelSf(i), the minimum associated DegreeCp(i) or DegreeSf(i) areoutput as DegreeR(i).

Defuzzification—The fuzzy outputs of the rule base inference process 708are processed to one or more crisp outputs using, e.g., the centroid orother comparable method. Input parameters to this defuzzificationprocess 710 comprise: 1) LabelR(i)—One to four labels associated withRejectionLevel; 2) DegreeR(i)—Degree associated with each RejectionLevellabel; and 3) MF(i,j)—Membership functions for RejectionLevel.

For MF(i,j), the row index (i) represents the label 0-4. The columnrepresents the membership function sample. This array is shown in Table13 of Appendix I.

Internal processing conducted by the exemplary defuzzification process710 comprises determination of the Fuzzification union F(j). Thisvariable comprises the union of the individual membership functions,with associated degrees, is taken as shown in Eqn. (18):F(j)=clip{DegreeN(0), MF[LabelN(0),:]}∪clip{DegreeN(1),MF[LabelN(1),:]}∪clip{DegreeN(2), MF[LabelN(2),:]}∪clip{DegreeN(3),MF[LabelN(3),:]}  (18)where the notation “:” refers to using all indices j=0 to 4 andclip[x,y(j)] refers to clipping all values of the function y(j) at themaximum value of x.

Internal processing conducted by the exemplary defuzzification process710 also comprises determination of the RejectionLevel variable; i.e.,the noise class is found from calculating the centroid of thefuzzification union as shown in Eqn. (19): $\begin{matrix}{{RejectionLevel} = \frac{\sum\limits_{j = 0}^{4}\quad{F\quad{(j) \cdot (j)}}}{\sum\limits_{j = 0}^{4}\quad{F\quad(j)}}} & (19)\end{matrix}$Exemplary output parameters from the defuzzification process 710comprise RejectBeatM, the Boolean value representing in the presentembodiment whether the beat is noisy or not. The value is set to “true”if RejectionLevel meets a designated criterion; e.g., is greater than orequal to a predetermined value such as 2.

Reset Module—The reset module 712 of the process 700 of FIG. 7 isdesigned to be an intelligent means for resetting the ECG morphologymodel without the need for user input. In the illustrated embodiment, ifeither of the beat rejection models (e.g., ECG noise or morphology)determines that a beat should be rejected, the beat will optionally bepassed through the reset module 712. The reset module tests against oneor more conditions that can aid in determining whether there areconditions occurring within the input vectors (i.e., ECG source leadsand associated signals) or the noise/morphology process itself that areundesirable or otherwise indicative of a less-than-optimal condition.For example, as shown in the exemplary decision flow of FIG. 10, theseone or more conditions comprise: (i) whether or not the beat is rejected1002; (ii) whether n (e.g., n=5) consecutive rejections have occurred1004; (iii) whether a predetermined number (e.g., two) or more previousresets of the ECG module have occurred 1006; (iv) whether an automaticECG vector determination has already been performed 1008; and (v)whether a predetermined period of time has elapsed (e.g., 30 seconds)1010.

The first condition 1002 is used to pre-screen for only rejected beats(i.e., those that are rightfully analyzed via the reset module). Thesecond condition 1004 is used to determine if a series of beats arebeing rejected, such as where each beat is defective or otherwiseunsuitable in some fashion (e.g., very low amplitude or otherundesirable characteristics).

The third condition 1006 is used to determine whether (another) ECGmodule reset is warranted (i.e., identifying where prior resets have notcured the deficiency).

The fourth condition 1008 is used to determine whether a prior ECGvector automatic selection has been performed.

Finally, the fifth condition 1010 is used to prevent an error messagebeing issued where a predetermined elapsed time (e.g., 30 seconds) hasnot yet elapsed.

If all of these conditions are met, the system enters an error state,and generates a display and/or audible error message, such as e.g.,“Unable to acquire ECG. Perform System Test to verify system integrity.Contact Technical Support if System Test fails.”

Input parameters to the reset module process 712 comprise: 1)RejectBeat, a Boolean value representing whether the beat is noisy ornot, that is set by either the morphology or noise rejection models; 2)PastRejectionArray, an array containing the Boolean rejection values forthe past n (e.g., 4) detected beats; 3) ResetCount, a counter for thenumber of consecutive resets; 4) AutoECG, a Boolean value set to falseat the beginning of a session (if the AutoECG algorithm is performedduring the current session, it is set to true); and 5) Timer, a secondscounter that is initialized at the completion of AutoECG. The counterruns from 0 to 30s in the illustrated embodiment, although otherinitiation points and durations may be utilized.

Internal processing of the exemplary embodiment of the reset modulecomprises processing according to the following algorithm. Thisalgorithm is graphically illustrated in FIG. 10, previously discussedherein. RejectBeat; /* Boolean Value */ PastRejectionArray; /* Array of4 Boolean values */ ResetCount; /* Counter for ECG model resets */AutoECG; /* Boolean value */ Timer; /* Time in seconds following anAutoECG lead selection */ If(RejectBeat){  Consec_rej =SUM(PastRejectionArray);  /*Using the numerical equivalent of True/Falseadd up the number of  true values in the array, 4 indicates the need fora Reset (the current  beat makes beat makes the 5^(th) consecutive*/ If(Consec_rej = 4){   If(ResetCount = 2){    If(AutoECG){     If(Timer< 30s){      ResetECGModel;      /* Drop the current ECG morphology andget      the next beat as the new model for      comparison */     ResetCount = ResetCount + 1;      PastRejectionArray = [ ]; /*Emptythe      array*/     } else {      DISPLAYERROR(“Unable to acquire ECG.     Perform System Test to verify system      integrity. ContactTechnical Support if      System Test fails.”);     }    } else {    AUTO_ECG_ALGORITHM;     /* Run the automatic ECG selectionalgorithm, and     switch to the given lead */     AutoECG = True;    START_TIMER(Timer);     /* Start Timer when AutoECG has finished */   }   } else {     ResetECGModel;     PastRejectionArray = [ ]; /*Emptythe array*/     ResetCount = ResetCount + 1;   }  } else {  REJECT_BEAT;   /* Reject the beat and continue processing the ECG data*/   PastRejectionArray = PastRejectionArray[1:4] + RejectBeat;   /*Dropthe oldest beat and add in the new Boolean */  } } else {  /* DoNothing, continue processing the ECG */ }

-   -   © Copyright 2004 CardioDynamics International Corporation. All        rights reserved.        Output parameters of the exemplary reset module process 712        comprise: (1) PastRejectionArray—Array containing the Boolean        rejection values for the past 4 detected beats; (2)        ResetCount—Counter for the number of consecutive resets; (3)        AutoECG—Boolean value set to false at the beginning of a        session; and (4) Timer—time (e.g., seconds) counter that is        initialized at the completion of AutoECG.

It is noted that under one implementation of the present invention bythe Assignee hereof, the two levels of ECG rejection criteria previouslydescribed herein were validated in 464 ECG beats collected from 21cardiac patients, 13 of whom were not paced. These patient data were notused in algorithm training. An expert user not involved in algorithmtraining visually labeled each beat as rejected or nonrejected; theselabels were used as reference data. During this validation, with “truepositive” defined as an ECG beat that was correctly rejected, 98%sensitivity and 96% specificity were obtained, thereby providingexperimental verification of the efficacy of this implementation of thepresent invention.

Delta Z Rejection Criteria

Referring now to FIGS. 11-13, the Delta Z rejection processing accordingto the exemplary embodiment of the invention is described in detail.

As previously noted with respect to FIG. 1, the Delta Z rejectionprocessing comprises a second tier of the analytical hierarchy.Specifically, in those situations where the ECG can be used to parseDelta Z beats, the following three criteria are used for Delta Z beatrejection at the prescribed frequency (e.g., 200 Hz): (i) Delta Zamplitude; (ii) Delta Z similarity; and (iii) Delta Z reproducibility.These three criteria are now described in greater detail.

(i) In the exemplary embodiment, those Delta Z beats possessingamplitudes<22 mohms may not be processed accurately using empiricaldetection. With wavelet processing, this minimum acceptable amplitudecan be significantly reduced (e.g. to 17 mohms), although it will berecognized that other values may be used consistent with the invention.Exemplary methods for wavelet processing are described in, inter alia,co-owned U.S. Pat. No. 6,561,986 to Baura, et al. issued May 13, 2003entitled “Method and apparatus for hemodynamic assessment includingfiducial point detection” which is incorporated herein by reference inits entirety.

(ii) When applying the Delta Z similarity criterion, the similaritybetween left and right Delta Z beats is analyzed to classify “quiet” and“noisy” beats. If a beat is classified as noisy, it is rejected.Classification is made with a fuzzy model, one embodiment of which isillustrated in the exemplary process 1100 of FIG. 11. The inputs 1102 tothe fuzzy model comprise the mismatch between the global minimum andmaximum of the Haar wavelet transformed normalized left and right beats(Mismatch), and the number of zero crossings between the difference ofnormalized beats (Crossings). If the left and right beats are similar,then the number of samples between global minima and maxima is small,leading to a small mismatch. If the left and right beats are similar,then several zero crossings will occur in the difference due to randomnoise. The model output comprises the Boolean value (Reject Beat) 1110.Exemplary input and output membership functions for this model are shownin FIG. 12, although it will be recognized that other may besubstituted.

The similarity calculations 1104 of the process 1100 of FIG. 11 enablethe calculation of crisp inputs to the fuzzy model 1105. These inputsare transformed through a fuzzification process 1106, which utilizes theinput membership functions, into fuzzy inputs. The fuzzy inputs aremapped to fuzzy outputs using rule base inference (RBI) process 1107.Through a defuzzification process 1108, which utilizes the outputmembership function, the crisp noise class value is determined. In theillustrated embodiment, if the noise class≧2, the beat is considerednoisy and is rejected.

Input parameters to the similarity calculations 1104 comprise: (1)LeftDeltaZ(k)—samples comprising one beat of Left DeltaZ(k), from the Rpoint to most recent Q point; if this is a paced beat, the Q to Rinterval is assumed to be N (e.g., 6) samples; and (2)RightDeltaZ(k)—samples comprising one beat of Right DeltaZ(k), from theR point to most recent Q point; if this is a paced beat, the Q to Rinterval is assumed to be N (e.g., 6) samples.

Exemplary internal processing of the similarity calculations 1104comprises the following:

1) Lnorm(k)—normalized LeftDeltaZ(k) is calculated according to Eqn.(20): $\begin{matrix}{{{Lnorm}\quad(k)} = \frac{{{LeftDeltaZ}\quad(k)} - {{mean}\quad\left\lbrack {{LeftDeltaZ}\quad(k)} \right\rbrack}}{{\max\quad\left\lbrack {{LeftDeltaZ}\quad(k)} \right\rbrack} - {\min\quad\left\lbrack {{LeftDeltaZ}\quad(k)} \right\rbrack}}} & (20)\end{matrix}$

2) Rnorm(k)—normalized RightDeltaZ(k) is calculated according to Eqn.(21): $\begin{matrix}{{{Rnorm}\quad(k)} = \frac{{{RightDeltaZ}\quad(k)} - {{mean}\quad\left\lbrack {{RightDeltaZ}\quad(k)} \right\rbrack}}{{\max\quad\left\lbrack {{RightDeltaZ}\quad(k)} \right\rbrack} - {\min\quad\left\lbrack {{RightDeltaZ}\quad(k)} \right\rbrack}}} & (21)\end{matrix}$

3) LeftHaar(k)—scale two Haar detail coefficients of{LeftDeltaZ(k)−mean[LeftDeltaZ(k)]}, where the last 5 scale-two samplesomitted from further calculations. The approximation decompositionfilter used comprises$\left\{ {\frac{\sqrt{2}}{2}\frac{\sqrt{2}}{2}} \right\};$the detail decomposition filter used comprises$\left\{ {{- \frac{\sqrt{2}}{2}}\frac{\sqrt{2}}{2}} \right\}.$

4) RightHaar(k)—scale two Haar detail coefficients of{RightDeltaZ(k)−mean[RightDeltaZ(k)]}, with the last 5 scale-two samplesomitted from further calculations.

5) Minsamples—the absolute value of the difference in samples in scale 0(multiply by 4) between the global minimum in LeftHaar(k) and globalminimum in RightHaar(k).

6) Maxsamples—the absolute value of the difference in samples in scale 0(multiply by 4) between the global maximum in LeftHaar(k) and globalmaximum in RightHaar(k).

7) Sum—the sum of Minsamples and Maxsamples

8) Difference—the difference between Lnorm(k) and Rnorm(k).

Output parameters of the similarity calculation 1204 comprise:

1) MSE—the mean squared error between Lnorm(k) and Rnorm(k)

2) Mismatch—match between left and right Haar detail coefficients. IfMSE≦0.0185, then Mismatch=Minsamples. Otherwise, Mismatch=Sum.

3) Crossings—the number of zero crossings in Difference.

4) Maxabserr—the absolute value of the maximum difference between(Lnorm(k)−Rnorm(k))

5) Error_ratio—the ratio of Maxabserr/MSE

Fuzzification—The crisp inputs are translated through membershipfunctions into fuzzy inputs. Input parameters to the fuzzificationprocess 1106 comprise (1) Mismatch—match between left and right Haardetail coefficients; (2) Crossings—the number of zero crossings inDifference; and (3) MSE—the mean squared error between Lnorm(k) andRnorm(k).

Internal processing of the exemplary fuzzification process 1106comprises: (1) M—Mismatch bounded within a predetermined range (e.g.,{0,52}), with resolution of a given number (e.g. 4) of samples; and (2)C—Crossings bounded within the range e.g., {2,18}, with resolution e.g.,1.

Exemplary output parameters of the fuzzification process 1106 of FIG. 11comprise:

1) LabelM(i)—If MSE<0.09, then one or two labels associated with M,based on Table 14 of Appendix I; otherwise, LabelM(i)={4}.

2) DegreeM(i)—If MSE<0.09, then degree associated with each M label,based on Table 15. Otherwise, DegreeM(I)={1}.

3) LabelC(i)—One or two labels associated with C, based on Table 16.

4) DegreeC(i)—Degree associated with each C label, based on Table 17.

Rule Base Inference—In the exemplary embodiment of the Delta Zsimilarity calculation, the fuzzy inputs from the fuzzification process1106 of FIG. 11 are processed using the Zadeh intersection to obtainfuzzy outputs. The input parameters to this rule base inference process1107 comprise: (1) LabelM(i)—One or two labels associated with M; (2)DegreeM(i)—Degree associated with each M label; (3) LabelC(i)—One or twolabels associated with C; (4) DegreeC(i)—Degree associated with each Clabel; and (5) Error_ratio—the ratio of Maxabserr/MSE.

Internal processing of the inference process 1107 comprises: (1)Test1—Boolean is set to TRUE If LabelM(0)=0 AND DegreeM(0)=1; (2)Test2—Boolean is set to TRUE If LabelC(0)=1 AND DegreeC(0)=1; (3)Test3—Boolean is set to TRUE If Error_ratio>17; and (4) Testout—Booleanis calculated as (Test1 AND Test2 AND Test3).

Output parameters of the exemplary inference process comprise:

(1) LabelN(i)—One to four labels associated with NoiseClass. IfTestout=FALSE, each combination of LabelM(i) and LabelC(i) is input toTable 18 (Appendix I) to determine LabelN(i). If Testout=TRUE,LabelN(0)=2.

(2) DegreeN(i)—Degree associated with each NoiseClass label. IfTestout=FALSE, for each combination of LabelM(i) and LabelC(i), theminimum associated DegreeM(i) or DegreeC(i) is output as DegreeN(i). IfTestout=TRUE, DegreeN(0)=1.

Defuzzification—In the exemplary embodiment of FIG. 11, the fuzzyoutputs are processed to a crisp output using, e.g., the centroidmethod. Exemplary input parameters to the defuzzification process 1108comprise:

1) LabelN(i)—One to four labels associated with NoiseClass.

2) DegreeN(i)—Degree associated with each NoiseClass label.

3) Minsamples—Minsamples value in current beat. This is initialized to apreselected value (e.g., +1000).

4) Minsamples(b-1)—Minsamples value from previous beat. This isinitialized to a preselected value (e.g., to 0).

5) Minsamples(b-2)—Minsamples value from 2 beats past. This isinitialized to a preselected value (e.g., −1000).

6) Maxabserr—the absolute value of the maximum difference between(Lnorm(k)−Rnorm(k))

7) MF(i,j)—Membership functions for NoiseClass. The row index (i)represents the label 0-4. The column index (j) represents the membershipfunction sample. An exemplary configuration for this array is shown inTable 19 (Appendix I).

Internal processing of the exemplary defuzzification algorithm 1108comprises determination of the following parameters:

1) F(j)—Fuzzification union. The union of the individual membershipfunctions, with associated degrees, is taken according to Eqn. (22):F(j)=clip{DegreeN(0), MF[LabelN(0),:]}∪clip{DegreeN(1),MF[LabelN(1),:]}∪clip{DegreeN(2), MF[LabelN(2),:]}∪clip{DegreeN(3),MF[LabelN(3),:]}  (22)where “:” refers to using all indices j=0 to 8 and clip[x,y(j)] refersto clipping all values of the function y(j) at the maximum value of x.

2) NoiseClass1—The first temporary noise class is determined bycalculating the centroid of the fuzzification union according to Eqn.(23): $\begin{matrix}{{{NoiseClass}\quad 1} = \frac{\sum\limits_{j = 0}^{8}\quad{F\quad{(j) \cdot \left( {0.5j} \right)}}}{\sum\limits_{j = 0}^{8}\quad{F\quad(j)}}} & (23)\end{matrix}$

3) NoiseClass2—The second temporary noise class is determined, also withconsideration of special cases such as where the natural morphology ofleft and right Delta Z causes high Minsample values. NoiseClass2=1 If 1)the maximum difference between all three Minsample values≦8 samples AND2) each Minsample(i)>50 samples AND 3) MSE<0.09. Otherwise,NoiseClass2=NoiseClass1].

Output parameters of the exemplary defuzzification process 1108comprise:

1) NoiseClassOUT—The final NoiseClass is determined, taking into accountthat when left and right Delta Z are associated with a small maximumabsolute error, the beat is classified as quiet. NoiseClassOUT=1 If{Maxabserr<0.2 AND NoiseClass2=2}. Otherwise, NoiseClassOUT=NoiseClass2.

2) Reject Beat—Classification of beat as noisy (T=reject) or quiet (F).If NoiseClassOUT≧2, then the beat shall be considered noisy andrejected.

(iii) Referring now to FIGS. 13 and 13 a, one exemplary embodiment ofthe Delta Z reproducibility algorithm 1300 is described in detail. Aspreviously noted, the Delta Z reproducibility analysis comprises thethird of three (3) Delta Z rejection criteria performed within thesecond level of the hierarchy of FIG. 1.

As shown in FIG. 13, the first step of the analysis comprises acomparison between the current and most recent “quiet” beats.Occasionally, when waveform artifact is present, the left and rightDelta Z signals may be similar (typically, they both appear to be rampfunctions), but neither resembles a typical periodic Delta Z. If theDelta Z similarity output classification is “quiet” (step 1302), thenthe current left Delta Z beat and most recent “quiet” left Delta Z beatare compared (step 1304) using a cross-correlation function to determineif the current beat is truly “quiet”. If the degree of reproducibilityis less than a first predetermined value (e.g., val1) and greater than asecond value (e.g., val2) per step 1306, then the current beat isreclassified as “noisy” (step 1308). FIG. 13 a illustrates an exemplarysignal and module architecture 1350 useful for implementing thisalgorithm 1300 including the similarity calculation module 1352 and thedecision module 1354. It will be appreciated, however, that otheralgorithms or architectures for analyzing beats for reproducibility maybe used consistent with the invention, including using beats derivedfrom sources other than the left side.

In the exemplary embodiment, input parameters to this Delta Zreproducibility process 1300 comprise:

1) Pacerdetection—the Boolean representing the presence of pacingspikes.

2) PreviousLeftDeltaZ(k)—samples comprising the most recent beat of LeftDeltaZ(k), from the R point to most recent Q point. If this is a pacedbeat, the Q to R interval is assumed to be 6 samples.

3) CurrentLeftDeltaZ(k)—samples comprising the current beat of LeftDeltaZ(k), from the R point to most recent Q point. If this is a pacedbeat, the Q to R interval is assumed to be 6 samples.

Internal processing of the exemplary reproducibility process 1300comprises the following:

1) Start—the zeroth sample of PreviousLeftDeltaZ(k) andCurrentLeftDeltaZ(k). If Pacerdetection=FALSE, Start=(Q point+6). IfPacerdetection=TRUE, Start=(Q point+10).

2) LenPDZ—number of samples comprising PreviousLeftDeltaZ(k).

3) LenCDZ—number of samples comprising CurrentLeftDeltaZ(k).

4) PLNorm(k)—normalized PreviousLeftDeltaZ(k) is calculated as in Eqn.(24): $\begin{matrix}{{{PLNorm}\quad(k)} = \frac{\begin{matrix}{{{PreviousLeftDeltaZ}\quad(k)} -} \\{{mean}\quad\left\lbrack {{PreviousLeftDeltaZ}\quad(k)} \right\rbrack}\end{matrix}}{\begin{matrix}{{\max\quad\left\lbrack {{PreviousLeftDeltaZ}\quad(k)} \right\rbrack} -} \\{\min\quad\left\lbrack {{PreviousLeftDeltaZ}\quad(k)} \right\rbrack}\end{matrix}}} & (24)\end{matrix}$

5) CLNorm(k)—normalized CurrentLeftDeltaZ(k) is calculated as in Eqn.(25): $\begin{matrix}{{{CLNorm}\quad(k)} = \frac{\begin{matrix}{{{CurrentLeftDeltaZ}\quad(k)} -} \\{{mean}\quad\left\lbrack {{CurrentLeftDeltaZ}\quad(k)} \right\rbrack}\end{matrix}}{\begin{matrix}{{\max\quad\left\lbrack {{CurrentLeftDeltaZ}\quad(k)} \right\rbrack} -} \\{\min\quad\left\lbrack {{CurrentLeftDeltaZ}\quad(k)} \right\rbrack}\end{matrix}}} & (25)\end{matrix}$

6) Rxy(k)—cross-correlation of PLNorm(k) and CLNorm(k), which iscomputed as in Eqn. (26): $\begin{matrix}{{{{{Rxy}(k)} = {\sum\limits_{n = 0}^{N - 1}\quad{{{PLNorm}(k)}.{{CLNorm}\left( {k + n} \right)}}}},{{{where}\quad N} = {LenPDZ}}}{{{{for}\quad k} = {- \left( {{LenPDZ} - 1} \right)}},{{- \left( {{LenPDZ} - 2} \right)}{\quad{,\ldots\quad,{- 2},{- 1},0,1,2,\ldots\quad,{\left( {{LenCDZ} - 1} \right).}}}}}} & (26)\end{matrix}$

7) kmax_CC—maximum index of cross-correlation Rxy(k).

The following pseudocode illustrates one exemplary algorithmicimplementation of the process of 1300 of FIGS. 13 and 13 a. // Paddingthe shortest Beat //==================== padding_Length = abs(LenPDZ −LenCDZ); if (LenPDZ < LenCDZ)  LenDZ = LenPDZ + padding_Length; PLNorm(k) = [PLNorm(k) zeros(1,padding_Length)]; else  LenDZ = LenCDZ +padding_Length;  CLNorm(k) = [CLNorm(k) zeros(1,padding_Length)]; end//Initialization //========= Begin = −LenDZ; End = LenDZ; x = PLNorm(k);y = CLNorm(k); Size = 2*LenDZ − 1; index = 1; //Computing theCross_Correlation //========================== for k=Begin:End−2  sum =0;  for i=0:LenDZ−1   j = i + k;   if (j<0 | j>LenDZ−1)    continue  else    sum = sum + x(j)*y(i);   end  end  Rxy(index) = sum;  index =index + 1; end [maxi_CC,kmax_CC] = max(Rxy(k));

-   -   © Copyright 2004 CardioDynamics International Corporation. All        rights reserved.        The sole output parameter of the illustrated reproducibility        process 1300 comprises the MaxIndex parameter; i.e., the        normalized maximum index of cross-correlation of PLNorm(k) and        CLNorm(k). This parameter is computed according to Eqn. (27)        below: $\begin{matrix}        {{MaxIndex} = \frac{k\quad{max\_ CC}}{Size}} & (27)        \end{matrix}$

Decision—The input parameter of the exemplary decision process module1354 of FIG. 13 a comprises the MaxIndex parameter described immediatelyabove. The output parameter of the decision process 1354 comprises theReclassBeat parameter; i.e., the Boolean value representing whether thebeat is quiet, or should be reclassified as noisy. The value is set toeither true or false based on a predetermined range of values forMaxIndex as shown in Eqn. (28): $\begin{matrix}{{ReclassBeat} = \left\{ \begin{matrix}{False} & {0.415 \leq {MaxIndex} \leq 0.625} \\{True} & \quad\end{matrix} \right.} & (28)\end{matrix}$

Under one implementation of the present invention by the Assigneehereof, the two levels of Delta Z rejection criteria previouslydescribed herein were validated in 220 beats collected from 44 cardiacpatients. These patient data were not used in algorithm training. Anexpert user not involved in algorithm training visually labeled eachbeat as rejected or non-rejected; these labels were used as referencedata. During this validation, with “true positive” defined as a Delta Zbeat that was correctly rejected, 90% sensitivity and 90% specificitywere obtained, thereby providing experimental verification of theefficacy of this implementation of the present invention.

Parameter Median Filters

As previously discussed with respect to FIG. 1, the illustratedembodiment of the invention also utilizes a third (optional) parametermedian filtering stage within the hierarchy 100. Such median filteringadvantageously allows anomalous high and low values to be excluded fromclinical use.

Each parameter to be filtered is input to a median filter. The length ofthe filter is determined by the user, e.g., selected between two values(such as 5 and 60 beats), or alternatively may be determinedalgorithmically (automatically) if desired. For each parameter, thefilter output is also optionally displayed on the display screen of theapparatus (see the discussion of FIG. 14 presented subsequently herein)or output to another device, and stored for possible later recall.

Reasons not use such median filtering may include, e.g., to observebeat-to-beat parameter variability. This may be useful in certaincircumstances such as analysis of heart rate variability. However, it isanticipated that in most applications, such filtration would bedesirable.

It will be recognized that while described primarily in the context of asequential set of processing operations (e.g., ECG rejection, then DeltaZ rejection, then median filtering) as shown in the exemplaryconfiguration of FIG. 1, the present invention may be practiced usingother combinations and orders of performance. For example, in onevariant, the invention allows the operator to optionally perform or notperform the median filtering operations as discussed above. In anothervariant, one or more portions of the ECG rejection analysis may beperformed in parallel with one another. Similarly, portions of the DeltaZ rejection analysis may be performed ahead of or in parallel with theECG rejection analysis. Hence, it will be understood that the presentinvention is in no way limited to any specific order or sequence ofsteps or algorithmic operations.

Similarly, the logic of the exemplary embodiment of the ECG reset moduledescribed with respect to FIG. 10 may be modified in order to produced adesired functionality. For example, one of more of the conditions 1002,1004, 1006, 1008, 1010 analyzed using this process 1000 may be removed,or others added. The order of performance may also be permuted and/orcombined, such as where multiple pathways through the logic will producean error condition. The logic may also be made contingent on otherfactors, such as repetition of the process 1000 (i.e., two successfulcycles or iterations through the module logic generating an errorcondition are required before an actual error condition is invoked.Myriad other variations are possible consistent with the presentinvention.

Apparatus for Hemodynamic Assessment

Referring now to FIG. 14, exemplary apparatus for measuring hemodynamicproperties associated with the cardiovascular system of a living subjectis described. In the illustrated embodiment, the apparatus is adaptedfor the measurement of the cardiac output of a human being, although itwill be recognized that other parameters (hemodynamic or otherwise) andtypes of living organism may be evaluated in conjunction with theinvention in a broader sense.

The apparatus 1400 of FIG. 14 fundamentally comprises a plurality ofelectrically conductive electrodes 1402 (with individual terminals 1421,1423) for supplying a current and measuring voltage (and impedance) fromthe subject non-invasively; a current source 1404 coupled to at least aportion of the electrodes 1402 for providing the alternating (AC)electrical current supplied to the subject; discrete analog circuitry1406 for preconditioning the analog impedance and ECG waveforms derivedfrom the electrodes 1402, an analog-to-digital converter (ADC) 1407 forconverting the conditioned analog signals to a binary digital format; adigital processor 1408 operatively connected to the ADC 1407 foranalyzing the digital representations of the conditioned ECG andimpedance waveforms; a buffer memory 1410 for storing conditioned dataprior to analysis (e.g., detection of fiducial points within thewaveform); program and data memories 1411, 1413, for storing programinstructions and data, respectively; a mass storage device 1415, aninput device 1417 for receiving operation command and data from theapparatus user, and a display device 1418 for displaying informationsuch as data and waveforms, as well as applications program interface,to the user.

The electrodes 1402 of the embodiment of FIG. 14 comprise so-called“spot” electrodes of the type well known in the medical arts, althoughit will be recognized that other types of electrodes, including bandelectrodes may be substituted. As used herein, the term “spot” electrodeincludes both single- and multi-terminal electrodes adapted for use in alocalized area of the subject's physiology. Exemplary configurations ofthe multi-terminal spot electrode especially useful with the inventionherein are described in U.S. utility Pat. No. 6,636,754 to Baura, et al.issued Oct. 21, 2003 and entitled “Apparatus and method for determiningcardiac output in a living subject” as well as in U.S. design Pat. Nos.D475,138 entitled “Electrode for use on a living subject with removableprotective electrode carrier”, and Nos. D471,281 and D468,433 eachentitled “Electrode for use on a living subject”, each of the foregoingassigned to the Assignee hereof and incorporated by reference herein inits entirety.

In operation, the apparatus 1400 generates an effectively constantcurrent (via the current source 1404) which is applied to certain onesof the terminal(s) 1421 of the electrodes 1402. The applied currentderived from the current source 1404 is a 70 kHz sine wave ofapproximately 2.5 mA maximum RMS. The measured voltage associated withthe aforementioned sine wave is on the order of 75 mV maximum RMS. Thesevalues are chosen to advantageously minimize electric shock hazard,although it will be appreciated that other frequencies, currents, orvoltages may be substituted. The construction and operation of ACcurrent sources is well known in the electronic arts, and accordingly isnot described further herein.

The preprocessor 1406 and associated signal processing apparatus is inelectrical communication with other electrodes 1402, from whichpotentials (voltages) are measured. In the selected frequency range ofthe AC signal (e.g., 70 kHz), the typical impedance associated with ahuman subject's skin is 2 to 10 times the value of the underlyingthoracic impedance Z_(T)(t). To aid in eliminating the contribution fromskin and tissue impedance, the apparatus of the present invention usesat least two, and typically four electrode arrays 1402 a-d formeasurement, as shown in FIG. 14. In a simple application, one electrodearray 1402 a comprising a stimulation electrode terminal 1421 and ameasurement electrode terminal 1423 is applied above the thorax of thesubject, while a second electrode array 1402 b (similarly having astimulation electrode terminal and measurement electrode terminal) isapplied below the thorax. The AC current from the current source issupplied to the stimulation electrode terminals 1421. Current flows fromeach stimulation electrode terminal 1421 through each constant skinimpedance, Z_(sk1) or Z_(sk4), each constant body tissue impedance,Z_(b1) or Z_(b1), and each constant skin impedance, Z_(sk2) or Z_(sk3),to each measurement electrode terminal 1423. The voltages at themeasurement electrode terminals 1423 are measured and input to adifferential amplifier circuit 1427 within the preprocessor 1406 toobtain the differential voltage, V_(T)(t). The desired thoracicimpedance, Z_(T)(t), is then obtained using the relationship of Eqn.(29). $\begin{matrix}{{Z_{T}(t)} = \frac{V_{T}(t)}{I_{T}(t)}} & (29)\end{matrix}$

As shown in FIG. 14, two sets of electrode arrays 1402 a-d mayadvantageously be used to monitor the impedance associated with the leftand right portion of the thorax in the present invention. When eightelectrode terminals (four arrays 1402 a-d each with two terminals 1421,1423) are used in this manner, the four measurement arrays are also usedto obtain an electrocardiogram (ECG). As previously discussed, the ECGQRS interval is used to, inter alia, determine the subject's heart rate,identify the Q and R points, and perform beat rejection analysis aspreviously described herein.

It is noted that the apparatus 1400 described herein may be constructedin a variety of different physical configurations, using a variety ofdifferent components, and measuring a variety of different hemodynamicparameters. For example, some or even all of the foregoing componentsmay be physically integrated (such as in an application specificintegrated circuit or SoC device incorporating a DSP core, memory,“front” end analog processing, and ADC in a single piece of silicon),and/or the functionality associated with multiple components performedby a single multi-function component (e.g., a processor adapted toperform calculations associated with the event rejection methodsdisclosed herein, as well as host functions such as video display, busarbitration, etc.). One exemplary configuration comprises a PC-baseddevice of the type well known in the art, having a host microprocessoras well as the aforementioned preprocessing and signal processingfunctionality in the form of a separate DSP in data communicationtherewith. In yet another embodiment, the apparatus comprises a mobilepersonal computing device (such as a personal digital assistant,handheld computer or PDA), which is adapted to receive input data fromthe electrodes 1502 and analyze the data to produce a correctedmeasurement of cardiac output. It will also be recognized that otherportable devices, such as laptop computers, calculators, and personalorganizers, may conceivably be configured to run the computer program(s)of the present invention. Such portable devices are readily adapted tothe methods of the present invention, since as a result of theinvention's advantageous use of comparatively simple wavelet transforms,the processing and storage capability needed to implement the algorithmis decreased. Furthermore, a variety of different methods oftransmitting the input sensor (i.e., electrode) data to these devicesmay be used, including networked computers, or even wireless data links.

In yet another embodiment, the apparatus 1400 comprises a “module” ofthe type(s) described in co-owned U.S. Pat. No. 6,602,201 to Hepp, etal. issued Aug. 5, 2003 and entitled “Apparatus and method fordetermining cardiac output in a living subject” incorporated herein byreference in its entirety.

Furthermore, rejected beat data, cardiac output, LVET, SV, or othermeasurements generated by the foregoing apparatus 1400 may alsooptionally be stored in the storage device 1415 for later retrieval, oroutput to an external device such as a printer, data storage unit, otherperipheral component via a serial or parallel port if desired.Furthermore, the apparatus 1400 may be networked to another computingdevice or database (not shown) whereby the data generated by theapparatus may be remotely analyzed or stored. Transmission of outputdata to such remote devices may be accomplished using a variety of wellunderstood methods, such as by local area network (LAN), intranet,Internet, fiber-optic systems, infrared (e.g., IrDA), or radio frequency(wireless) devices such as without limitation those complying with theIEEE-Std. 802.11, 802.15, or Bluetooth Standards.

It will be further recognized that while the apparatus 1400 of theinvention is described herein as a substantially discrete or“stand-alone” system, the invention may be adapted to act as a plug incard, module, or other complementary device (including any supportingsoftware) for an existing ECG or patient monitoring system that utilizeselectrodes. Hence, the invention can advantageously be retrofitted tosuch prior art systems, thereby extending the utility of thepre-existing system, and potentially obviating the purchase of entirelynew equipment.

Furthermore, the apparatus 1400 may comprise part of a computer network,such as LAN, WLAN, piconet, scatternet, internet, etc., where dataconnectivity between the various entities on the network is provided.For example, in one embodiment, the apparatus 1400 comprises an ECG orICG module within a parent monitoring system of the type previouslyreferenced. The module (and/or parent system) may be in wireless datacommunication with a local WLAN node (e.g., an 802.11 AP or BluetoothMaster) servicing a plurality of homogeneous or heterogeneous devices.The WLAN node is in communication over, e.g., an IEEE-Std. 802.3Ethernet network of the like, with one or more other local or remotenodes. In this fashion, a large care facility can remain in datacommunication with the individual apparatus 1400 via one (or more)centralized monitoring or provisioning stations.

A client/server architecture may also be used, wherein each of theECG/ICG modules acts as a client device (including optionally running adistributed application on the module and an associated server). Myriadother network configurations will be appreciated by those of ordinaryskill in the networking arts provided the present disclosure.

Similarly, the apparatus 1400 may comprise an ECG or ICG module having aportable client device associated therewith for control of one or moremodule functions. The client device may comprise, e.g., a handheld PDAor the like having a wireless interface to the module.

Computer Program

A computer program for implementing the aforementioned methods eventanalysis and rejection is now described. In one exemplary embodiment,the computer program comprises an object (“machine”) code representationof an assembly source code listing implementing the analyticalmethodologies previously described herein (including, e.g., thehierarchical analysis framework of FIG. 1), either individually or incombination thereof. While assembly language is used for the presentembodiment, it will be appreciated that other programming languages maybe used, including for example VisualBasic™, Fortran, C, and C⁺⁺. Theobject code representation of the source code listing is compiled anddisposed on a media storage device of the type well known in thecomputer arts. Such media storage devices can include, withoutlimitation, optical discs, CD ROMs, magnetic floppy disks or “hard”drives, volatile or non-volatile memory ICs, tape drives, flash memory,USB keys, or even magnetic bubble memory. The computer program furthercomprises a user interface (e.g., GUI) of the type well known in theprogramming arts, which is operatively coupled to the display and inputdevice of the host computer or apparatus 1400 on which the program isrun.

In terms of general structure, the program is in one embodimentcomprised of a series of subroutines or algorithms for implementing themethodologies described herein based on measured physiologic data (e.g.,the “inputs” previously defined) which are provided to the hostcomputer. In a second embodiment, the computer program comprises anassembly language/micro-coded instruction set or firmware disposedwithin the embedded storage device, i.e. program memory, of a digitalsignal processor (DSP) or microprocessor associated with the foregoinghemodynamic measurement apparatus of FIG. 14.

The various functions of the present embodiment may also run and/or becontrolled at other layers of the device protocol stack; e.g.,substantially as part of any O/S or “middleware” of the parent platformif desired, thereby making the operation of the program transparent tothe user.

Method of Providing Treatment

Referring now to FIG. 15, a method of providing treatment to a subjectusing the aforementioned methods of waveform analysis and eventrejection is described. While the following discussion is cast in termsof the aforementioned methods and algorithms adapted for determiningcardiac output, it will be recognized that the method or providingtreatment described herein is more broadly applicable to treatment basedon the assessment of any physiologic property or parameter utilizingevent rejection.

As shown in FIG. 15, the method of providing treatment 1500 generallycomprises first disposing a plurality of impedance cardiographyelectrodes with respect to the thoracic cavity of the subject per step1502. As previously discussed, the electrodes 1402 may comprise themulti-terminal type described above with respect to FIG. 15 (or othersuitable configuration), and are disposed above and below the thorax ofthe subject such that at least one stimulation terminal and oneexcitation terminal are above and below the thorax. Next, the impedancewaveform (and ECG) data of the subject are obtained non-invasively viathe electrodes 1402 per step 1504; specifically by applying a constantAC waveform to the stimulation terminal(s), and measuring the resultantvoltage at the measurement terminal(s). In step 1506, the stroke volumeof the subject's cardiac muscle during at least one cardiac cycle isdetermined using beats that have been analyzed using the analyticaltechniques previously discussed herein. Specifically, the source ECGwaveform is analyzed and beats rejected, and the remaining beats areused as the basis of subsequent LVET and dZ/dt_(max) calculations. Thestroke volume is then determined from the derived values of LVET anddZ/dt_(max). The cardiac output (CO) of the subject is next determinedin step 1508 based on the stroke volume determined in step 1506, and theheart rate (HR) derived from the subject from the ECG waveform.

Lastly, a course of treatment is determined and provided to the subjectbased on the cardiac output (CO) of step 1508. Such course of treatmentmay include, for example, the intravenous injection of pharmacologicalagents, pacemaker implantation, or other such measures aimed atincreasing cardiac output or otherwise stemming further degradation ofthe subject's cardiac function.

It will be recognized that while certain aspects of the invention havebeen described in terms of a specific sequence of steps of a method,these descriptions are only illustrative of the broader methods of theinvention, and may be modified as required by the particularapplication. Certain steps may be rendered unnecessary or optional undercertain circumstances. Additionally, certain steps or functionality maybe added to the disclosed embodiments, or the order of performance oftwo or more steps permuted. All such variations are considered to beencompassed within the invention disclosed and claimed herein.

While the above detailed description has shown, described, and pointedout novel features of the invention as applied to various embodiments,it will be understood that various omissions, substitutions, and changesin the form and details of the device or process illustrated may be madeby those skilled in the art without departing from the spirit of theinvention. The foregoing description is of the best mode presentlycontemplated of carrying out the invention. This description is in noway meant to be limiting, but rather should be taken as illustrative ofthe general principles of the invention. The scope of the inventionshould be determined with reference to the claims.

Appendix I—Tables © Dynamics International Corporation. All rightsreserved.

TABLE 1 LabelRR(i) Table M_rr LabelRR(0) LabelRR(1) 0 0 1 0 2 0 1 3 1 41 2 5 2 6 2 7 2 3 8 3 9 4

TABLE 2 DegreeRR(i) Table M_rr DegreeRR(0) DegreeRR(1) 0 1 1 1 2 0.5 0.53 1 4 0.5 0.5 5 1 6 1 7 0.5 0.5 8 1 9 1

TABLE 3 LabelMSE(i) Table M_mse LabelMSE(0) LabelMSE(1) 0 0 1 0 1 2 1 32 4 2 3 5 2 3 6 3 7 3 8 3 9 3 4 10 4

TABLE 4 DegreeMSE(i) Table Msymfact DegreeSf(0) DegreeSf(1) 0 1 1 0.50.5 2 1 3 1 4 0.67 0.33 5 0.33 0.67 6 1 7 1 8 1 9 0.5 0.5 10 1

TABLE 5 Rule Base Inference for LabelNR LabelRR(i) LabelMSE(i) 0 1 2 3 40 0 0 0 0 1 1 0 0 1 1 2 2 0 0 1 3 4 3 1 1 3 4 4 4 3 4 4 4 4

TABLE 6 NoiseClass membership functions. Mem Sample Func 0 1 2 3 4 0 1 00 0 0 1 0 1 0 0 0 2 0 0 1 0 0 3 0 0 0 1 0 4 0 0 0 0 1

TABLE 7 Reverse Biorthogonal 2.2 lowpass filter coefficients b_(H0) tob_(H10) b_(H11) to b_(H22) b_(H23) to b_(H32) 0 0.375 0.250 0 0.5000.125 0 0.625 0 0 0.750 0 0 0.875 0 0 1.000 0 0 0.875 0 0 0.750 0 00.625 0 0.125 0.500 0 0.250 0.375 0

TABLE 8 LabelCp(i) Table Mcenterpt LabelCp(0) LabelCp(1) 0 0 1 0 2 0 3 04 0 5 0 1 6 1 7 1 8 1 9 1 2 10 2 11 2 3 12 3 13 3 14 3 15 3 4 16 4

TABLE 9 DegreeCp(i) Table Mcenterpt DegreeM(0) DegreeM(1) 0 1 1 1 2 1 31 4 1 5 0.5 0.5 6 1 7 1 8 1 9 0.5 0.5 10 1 11 0.5 0.5 12 1 13 1 14 1 150.5 0.5 16 1

TABLE 10 LabelSf(i) Table Msymfact LabelSf(0) LabelSf(1) 0 0 1 0 2 0 1 31 4 1 2 5 2 6 2 3 7 3 8 3 9 3 4 10 4

TABLE 11 DegreeSf(i) Table Msymfact DegreeSf(0) DegreeSf(1) 0 1 1 1 20.5 0.5 3 1 4 0.5 0.5 5 1 6 0.5 0.5 7 1 8 1 9 0.5 0.5 10 1

TABLE 12 Rule Base Inference for LabelR LabelCp(i) LabelSf(i) 0 1 2 3 40 4 0 0 0 4 1 4 1 0 1 4 2 4 3 1 3 4 3 4 4 2 4 4 4 4 4 4 4 4

TABLE 13 NoiseClass membership functions Mem Sample Func 0 1 2 3 4 0 1 00 0 0 1 0 1 0 0 0 2 0 0 1 0 0 3 0 0 0 1 0 4 0 0 0 0 1

TABLE 14 LabelM(i) Table M LabelM(0) LabelM(1) 0 0 1 0 2 0 1 3 1 4 1 2 52 6 2 3 7 3 8 3 9 3 10 3 11 3 4 12 4 13 4

TABLE 15 DegreeM(i) Table M DegreeM(0) DegreeM(1) 0 1 1 1 2 0.5 0.5 3 14 0.5 0.5 5 1 6 0.5 0.5 7 1 8 1 9 1 10 1 11 0.5 0.5 12 1 13 1

TABLE 16 LabelC(i) Table C LabelC(0) LabelC(1) 0 0 1 1 2 1 3 1 2 4 1 2 51 2 6 2 7 2 3 8 3 9 3 10 3 11 3 12 3 13 3 4 14 3 4 15 3 4 16 4

TABLE 17 DegreeC(i) Table C DegreeC(0) DegreeC(1) 0 1 1 1 2 1 3 0.750.25 4 0.5 0.5 5 0.25 0.75 6 1 7 0.5 0.5 8 1 9 1 10 1 11 1 12 1 13 0.750.25 14 0.5 0.5 15 0.25 0.75 16 1

TABLE 18 Rule Base Inference for LabelN LabelC(i) LabelM(i) 0 1 2 3 4 02 1 0 0 0 1 2 1 1 1 1 2 2 2 1 1 2 3 3 2 2 2 3 4 4 4 3 3 4

TABLE 19 NoiseClass membership functions Mem Sample Func 0 1 2 3 4 5 6 78 0 1 0.5 0 0 0 0 0 0 0 1 0 0.5 1 0.5 0 0 0 0 0 2 0 0 0 0.5 1 0.5 0 0 03 0 0 0 0 0 0.5 1 0.5 0 4 0 0 0 0 0 0 0 0.5 1

1. A method of assessing cardiac output within a living subject,comprising: disposing a plurality of electrodes relative to the thoraciccavity of said subject; passing an electrical current through at least aportion of said thoracic cavity; measuring at least one impedancewaveform associated with said thoracic cavity using said current and atleast one of said plurality of electrodes; measuring at leastelectrocardiographic waveform having a plurality of events associatedtherewith; selectively rejecting at least one of said events; anddetermining cardiac output based at least in part on said impedancewaveform and at least a portion of the non-rejected ones of said events.2. The method of claim 1, further comprising processing said at leastone impedance waveform to identify a plurality of B,C,X, and O points ofΔZ and dZ/dt waveforms.
 3. The method of claim 2, wherein the act ofdetermining cardiac output comprises determining left ventricularejection time (LVET).
 4. The method of claim 3, wherein the act ofdetermining LVET comprises determining the difference between respectiveones of said plurality of X and B points.
 5. The method of claim 1,wherein said events comprise cardiac beats, and said act of selectivelyrejecting at least one of said events comprises evaluating a pluralityof said beats using a multi-level hierarchical analysis algorithm. 6.The method of claim 1, wherein said act of selectively rejecting atleast one of said events comprises evaluating a plurality of cardiacbeats based on (i) one or more ECG rejection criteria; and (ii) one ormore Delta Z rejection criteria.
 7. The method of claim 6, furthercomprising evaluating said plurality of beats using at least oneparameter median filter.
 8. The method of claim 1, wherein said act ofselectively rejecting at least one of said events comprises evaluating aplurality of said events based on criteria relating to (i) ECG noise,and (ii) ECG morphology.
 9. The method of claim 8; wherein said criteriarelating to ECG noise comprises the change in the R-to-R interval fromthe previous beat.
 10. The method of claim 9, wherein said criteriarelating to ECG noise further comprises the change in mean squared error(MSE) from the last 2 good beats.
 11. A method of assessing ahemodynamic parameter within a living subject, comprising: disposing atleast one electrode relative to said subject; measuring at least onecardiographic waveform from said subject using said at least oneelectrode, said waveform having a plurality of beats; processing saidplurality of beats to identify first beats that should be rejected, andsecond beats that should not be rejected; and assessing said hemodynamicparameter based at least in part on said second beats.
 12. The method ofclaim 1 1, wherein the act of processing comprises evaluating saidplurality of beats with respect to at least one noise criterion and atleast one morphology criterion.
 13. The method of claim 12, wherein saidat least one noise criterion comprises a fuzzy logic analysis.
 14. Themethod of claim 12, wherein said at least one noise and morphologycriteria are conducted sequentially.
 15. The method of claim 11, whereinsaid act of processing comprises generating a Scale 1 wavelet filter.16. The method of claim 15, wherein said Scale 1 filter is calculatedbased on a reverse biorthogonal 2.2 wavelet.
 17. Apparatus adapted toevaluate the cardiac beats of a living subject using at least onefuzzy-based noise algorithm and at least one fuzzy-based morphologyalgorithm.
 18. The apparatus of claim 17, wherein said at least onemorphology algorithm comprises generation of a Scale 1 wavelet filter.19. The apparatus of claim 18, wherein said Scale 1 filter is calculatedbased on a reverse biorthogonal 2.2 wavelet.
 20. Impedance cardiographicapparatus adapted to evaluate physiologic waveforms obtained from aliving subject using a computer program adapted to evaluate criteriacomprising (i) at least one ECG rejection criterion and (ii) at leastone Delta Z rejection criterion.
 21. The apparatus of claim 20, whereinsaid computer program comprises a fuzzy logic model adapted to performsaid evaluation of said ECG rejection criterion.
 22. The apparatus ofclaim 21, wherein said computer program comprises a fuzzy logic modeladapted to perform said evaluation of said Delta Z rejection criterion.23. The apparatus of claim 22, wherein said computer program is furtheradapted to apply median filtering to at least one parameter associatedwith said waveforms.
 24. The apparatus of claim 20, wherein saidapparatus is further adapted to receive at least one impedance waveform,and generate estimates of cardiac output (CO) based at least in part onsaid physiologic waveforms and said at least one impedance waveform. 25.The apparatus of claim 24, wherein said generation of estimates of CO isperformed at least in part using wavelet transforms.
 26. The apparatusof claim 25, wherein said wavelet transforms are used in detecting aplurality of fiducial points associated with at least one of saidphysiologic waveforms and said at least one impedance waveform.
 27. Theapparatus of claim 20, wherein said physiologic waveforms comprise ECGand impedance waveforms.
 28. The apparatus of claim 27, wherein wavelettransforms are used in detecting a plurality of fiducial pointsassociated with at least one of said physiologic waveforms. 29.Cardiographic apparatus adapted to evaluate the cardiac beats of aliving subject using: an ECG rejection analysis; a Delta Z rejectionanalysis; and a median filtering analysis.
 30. The apparatus of claim29, wherein said ECG rejection analysis comprises an ECG noise analysisand an ECG morphology analysis.
 31. The apparatus of claim 29, whereinsaid Delta Z rejection analysis comprises an analysis selected from thegroup consisting of: (i) a Delta Z similarity analysis and (ii) a DeltaZ reproducibility analysis.
 32. The apparatus of claim 30, wherein saidDelta Z rejection analysis comprises an analysis selected from the groupconsisting of: (i) a Delta Z similarity analysis and (ii) a Delta Zreproducibility analysis.
 33. The apparatus of claim 29, wherein saidECG rejection, said Delta Z rejection, and said median filter analysesare performed in sequential order.
 34. A method of evaluating thecardiac beats of a living subject, comprising: performing an ECGrejection analysis; performing a Delta Z rejection analysis; andperforming a median filtering analysis.
 35. The method of claim 34,wherein said act of performing an ECG rejection analysis comprisesperforming an ECG noise analysis and an ECG morphology analysis.
 36. Themethod of claim 34, wherein said act of performing a Delta Z rejectionanalysis comprises performing an analysis selected from the groupconsisting of: (i) a Delta Z similarity analysis and (ii) a Delta Zreproducibility analysis.
 37. The method of claim 35, wherein said actof performing a Delta Z rejection analysis comprises performing ananalysis selected from the group consisting of: (i) a Delta Z similarityanalysis and (ii) a Delta Z reproducibility analysis.
 38. A method ofevaluating the cardiac beats of a living subject, comprising: performinga beat rejection analysis on a plurality of said cardiac beats;rejecting at least one of said beats as part of said analysis; anddetermining, based at least in part on said at least one rejected beat,a status of said rejection analysis.
 39. The method of claim 38, whereinsaid act of performing a beat rejection analysis comprises performing amorphology analysis.
 40. The method of claim 39, wherein said act ofdetermining a status comprises determining whether inputs to saidmorphology process are proper.
 41. The method of claim 40, wherein saidact of determining whether inputs to said morphology process are propercomprises evaluating the number of consecutive beat rejections includingsaid at least one rejected beat.
 42. The method of claim 41, whereinwhen said determination indicates that more than a predetermined numberof consecutive beats has occurred, said method further comprisesutilizing an automatic ECG vector process to identify at least oneproper input.
 43. A method of evaluating the cardiac beats of a livingsubject, comprising: providing a plurality of sources of said cardiacbeats; performing a beat rejection analysis on a plurality of saidcardiac beats derived from a first of said plurality of sources;rejecting at least one of said beats as part of said analysis; anddetermining, based at least in part on said at least one rejected beat,the suitability of said first source for providing said cardiac beats.44. The method of claim 43, further comprising selecting a second ofsaid sources as an input to said beat rejection analysis when said actof determining indicates that said first source is not suitable.
 45. Themethod of claim 44, wherein said act of selecting comprises performingan auto-ECG vector analysis.
 46. The method of claim 43, wherein saidact of determining comprises evaluating at least one of (i) the numberof consecutive beats rejected, and/or (ii) the number of resets of saidbeat rejection analysis previously performed.
 47. The method of claim46, further comprising selecting a second of said sources as an input tosaid beat rejection analysis when said act of determining indicates thatsaid first source is not suitable.
 48. The method of claim 47, whereinsaid act of selecting comprises performing an auto-ECG vector analysis.49. Cardiographic apparatus having an ECG evaluation module and aplurality of input vectors associated therewith, said module evaluatingthe cardiac beats of a living subject represented by one or more of saidvectors by the method comprising: providing a plurality of sources ofsaid cardiac beats; performing a beat rejection analysis on a pluralityof said cardiac beats derived from a first of said plurality of sources;rejecting at least one of said beats as part of said analysis; anddetermining, based at least in part on said at least one rejected beat,the suitability of said first source for providing said cardiac beats.50. A method of evaluating substantially periodic events within atime-variant waveform, comprising: providing a plurality of sources ofsaid events; performing an event rejection analysis on a plurality ofsaid events derived from a first of said plurality of sources; rejectingat least one of said events as part of said analysis; and determining,based at least in part on said at least one rejected event, thesuitability of said first source for providing said events.
 51. Themethod of claim 50, wherein said events comprise Gaussian monopulseswithin a time-modulated ultrawideband communication system.
 52. Themethod of claim 50, wherein said events comprise active acoustic pulseswithin a sonar or underwater acoustic profiling system.